public async Task <IActionResult> Register(FamilyMemberDetails FamilyMemberDetails)
        {
            var userWithSameEmail = _dbContext.FamilyMemberDetails.SingleOrDefault(u => u.MembEmail == FamilyMemberDetails.MembEmail);

            if (userWithSameEmail != null)
            {
                return(BadRequest("User with this email already exists"));
            }
            var FamilyMemberDetailsObj = new FamilyMemberDetails
            {
                FamMembID     = Guid.NewGuid(),
                MembType      = FamilyMemberDetails.MembType,
                userId        = FamilyMemberDetails.userId,
                MembFName     = FamilyMemberDetails.MembFName,
                MembLName     = FamilyMemberDetails.MembLName,
                MembEmail     = FamilyMemberDetails.MembEmail,
                MembPhone1    = FamilyMemberDetails.MembPhone1,
                MembPhone2    = FamilyMemberDetails.MembPhone2,
                MembBirthDate = FamilyMemberDetails.MembBirthDate,
                MembAge       = FamilyMemberDetails.MembAge,
                ModeType      = FamilyMemberDetails.ModeType,
                SchoolID      = FamilyMemberDetails.SchoolID,
                OfficeID      = FamilyMemberDetails.OfficeID,
                Standard      = FamilyMemberDetails.Standard,
                Division      = FamilyMemberDetails.Division
            };

            _dbContext.FamilyMemberDetails.Add(FamilyMemberDetailsObj);
            await _dbContext.SaveChangesAsync();

            return(StatusCode(StatusCodes.Status201Created));
        }
Пример #2
0
        public ActionResult Details(int id)
        {
            var model = new FamilyMemberDetails {
                FamilyMember = _dbContext.FamilyMemebers.Include(_ => _.CompletedChores).Include(_ => _.Redeptions).Single(_ => _.Id == id),
                Chores       = _dbContext.Chores.ToList()
            };

            model.PointsBalance = model.Chores.Sum(_ => _.PointValue) - model.Redeptions?.Sum(_ => _.Value) ?? 0;
            return(View(model));
        }
Пример #3
0
        public ActionResult RemoveCompletion(int id, int memberId)
        {
            var familyMemeber = _dbContext.FamilyMemebers.Include(_ => _.CompletedChores).Single(_ => _.Id == memberId);
            var choreToRemove = familyMemeber.CompletedChores.Single(cc => cc.Id == id);

            familyMemeber.CompletedChores.Remove(choreToRemove);

            _dbContext.SaveChanges();

            var model = new FamilyMemberDetails {
                FamilyMember = _dbContext.FamilyMemebers.Single(_ => _.Id == memberId),
                Chores       = _dbContext.Chores.ToList()
            };

            return(View("Details", model));
        }
Пример #4
0
        public ActionResult MarkChoreComplete(FamilyMemberDetails memberDetails)
        {
            var familyMemeber = _dbContext.FamilyMemebers.Include(_ => _.CompletedChores).Single(_ => _.Id == memberDetails.FamilyMember.Id);
            var choreToMark   = _dbContext.Chores.Single(_ => _.Id == memberDetails.SelectedChoreId);

            if (familyMemeber.CompletedChores == null)
            {
                familyMemeber.CompletedChores = new List <CompletedChore>();
            }
            familyMemeber.CompletedChores.Add(new CompletedChore {
                DateEntered  = DateTimeOffset.Now,
                PointsEarned = choreToMark.PointValue,
                Chore        = choreToMark
            });

            _dbContext.SaveChanges();

            var model = new FamilyMemberDetails {
                FamilyMember = _dbContext.FamilyMemebers.Single(_ => _.Id == memberDetails.FamilyMember.Id),
                Chores       = _dbContext.Chores.ToList()
            };

            return(View("Details", model));
        }
Пример #5
0
 public FamilyMemberDetailsBuilder()
 {
     birthDetails = new FamilyMemberDetails();
 }
Пример #6
0
        public static MemberDetailsDynamicField GetMemberDtlWithDynamicFeild(string grpuserID, string grpID)
        {
            try
            {
                MySqlParameter[] param = new MySqlParameter[2];
                param[0] = new MySqlParameter("@profileId", grpuserID);
                param[1] = new MySqlParameter("@GrpID", grpID);

                DataSet   result    = MySqlHelper.ExecuteDataset(GlobalVar.strAppConn, CommandType.StoredProcedure, "V6_USPGetMemberDetailsDistrict", param);
                DataTable dtMember  = result.Tables[0];
                DataTable dtAddress = result.Tables[3];
                //DataTable dtFamilyMember = result.Tables[4];
                DataTable dtSettings      = result.Tables[4];
                DataTable dtDynamicFields = result.Tables[5];

                List <MemberDetailsDynamicField> Memberdtls = new List <MemberDetailsDynamicField>();
                if (dtMember.Rows.Count > 0)
                {
                    Memberdtls = GlobalFuns.DataTableToList <MemberDetailsDynamicField>(dtMember);

                    foreach (MemberDetailsDynamicField mem in Memberdtls)
                    {
                        if (!string.IsNullOrEmpty(mem.profilePic))
                        {
                            string ImageName = mem.profilePic.ToString();
                            string path      = ConfigurationManager.AppSettings["imgPath"] + "Documents/directory/";
                            mem.profilePic = path + ImageName;
                        }
                        if (!string.IsNullOrEmpty(mem.familyPic))
                        {
                            string ImageName = mem.familyPic.ToString();
                            string path      = ConfigurationManager.AppSettings["imgPath"] + "Documents/directory/";
                            mem.familyPic = path + ImageName;
                        }
                    }
                    //=============================== Get Personal Fields ===========================================
                    DataTable dtPersonal = new DataTable();
                    dtPersonal.Columns.Add("fieldID");
                    dtPersonal.Columns.Add("Key");
                    dtPersonal.Columns.Add("Value");
                    dtPersonal.Columns.Add("ColType");
                    dtPersonal.Columns.Add("Uniquekey");
                    dtPersonal.Columns.Add("isEditable");
                    dtPersonal.Columns.Add("isVisible");
                    for (int i = 0; i < result.Tables[1].Rows.Count; i++)
                    {
                        for (int j = 0; j < result.Tables[1].Columns.Count; j++)
                        {
                            string colName   = result.Tables[1].Columns[j].ColumnName;
                            string isVisible = (from e in dtSettings.AsEnumerable()
                                                where e.Field <string>("DBColName") == colName &&
                                                e.Field <string>("fieldType") == "P"
                                                select e.Field <string>("isVisible")).SingleOrDefault();


                            DataRow dr = dtPersonal.NewRow();
                            dr["fieldID"]    = "0";
                            dr["Uniquekey"]  = colName;
                            dr["isEditable"] = "1";
                            if (colName == "isBOD")
                            {
                                dr["isVisible"] = "n";
                            }
                            else
                            {
                                dr["isVisible"] = "y";
                            }
                            string key = (from e in dtSettings.AsEnumerable()
                                          where e.Field <string>("DBColName") == colName &&
                                          e.Field <string>("fieldType") == "P"
                                          select e.Field <string>("DisplayName")).SingleOrDefault();
                            string colType = (from e in dtSettings.AsEnumerable()
                                              where e.Field <string>("DBColName") == colName &&
                                              e.Field <string>("fieldType") == "P"
                                              select e.Field <string>("ColType")).SingleOrDefault();

                            dr["key"]     = key;
                            dr["colType"] = colType;
                            dr["Value"]   = result.Tables[1].Rows[i][j].ToString();
                            dtPersonal.Rows.Add(dr);
                        }
                    }

                    //=============================== Get Buisness Fields ===========================================
                    DataTable dtBuisness = new DataTable();
                    dtBuisness.Columns.Add("fieldID");
                    dtBuisness.Columns.Add("Uniquekey");
                    dtBuisness.Columns.Add("Value");
                    dtBuisness.Columns.Add("ColType");
                    dtBuisness.Columns.Add("key");
                    dtBuisness.Columns.Add("isEditable");
                    dtBuisness.Columns.Add("isVisible");
                    for (int i = 0; i < result.Tables[2].Rows.Count; i++)
                    {
                        for (int j = 0; j < result.Tables[2].Columns.Count; j++)
                        {
                            string colName = result.Tables[2].Columns[j].ColumnName;

                            DataRow dr        = dtBuisness.NewRow();
                            string  isVisible = (from e in dtSettings.AsEnumerable()
                                                 where e.Field <string>("DBColName") == colName &&
                                                 e.Field <string>("fieldType") == "B"
                                                 select e.Field <string>("isVisible")).SingleOrDefault();

                            if (isVisible == "y")
                            {
                                dr["fieldID"]    = "0";
                                dr["Uniquekey"]  = colName;
                                dr["isEditable"] = "1";
                                dr["isVisible"]  = isVisible;
                                string query = (from lookup in dtSettings.AsEnumerable()
                                                where lookup.Field <string>("DBColName") == colName &&
                                                lookup.Field <string>("fieldType") == "B"
                                                select lookup.Field <string>("DisplayName")).SingleOrDefault();
                                string colType = (from e in dtSettings.AsEnumerable()
                                                  where e.Field <string>("DBColName") == colName &&
                                                  e.Field <string>("fieldType") == "B"
                                                  select e.Field <string>("ColType")).SingleOrDefault();
                                dr["key"]     = query;
                                dr["colType"] = colType;
                                dr["Value"]   = result.Tables[2].Rows[i][j].ToString();
                                dtBuisness.Rows.Add(dr);
                            }
                        }
                    }

                    //=============================== Get Dynamic Fields ===========================================
                    if (dtDynamicFields != null)
                    {
                        if (dtDynamicFields.Rows.Count > 0)
                        {
                            for (int i = 0; i < dtDynamicFields.Rows.Count; i++)
                            {
                                if (dtDynamicFields.Rows[i]["FieldCategory"].ToString() == "P")
                                {
                                    DataRow dr = dtPersonal.NewRow();
                                    dr["fieldID"]    = dtDynamicFields.Rows[i]["pk_fieldID"].ToString();
                                    dr["Uniquekey"]  = dtDynamicFields.Rows[i]["DisplayName"].ToString();
                                    dr["key"]        = dtDynamicFields.Rows[i]["DisplayName"].ToString();
                                    dr["colType"]    = dtDynamicFields.Rows[i]["fieldType"].ToString();
                                    dr["Value"]      = dtDynamicFields.Rows[i]["FieldValue"].ToString();
                                    dr["isEditable"] = dtDynamicFields.Rows[i]["IsEditableByMember"].ToString();
                                    dtPersonal.Rows.Add(dr);
                                }
                                else
                                {
                                    DataRow dr = dtBuisness.NewRow();
                                    dr["fieldID"]    = dtDynamicFields.Rows[i]["pk_fieldID"].ToString();
                                    dr["Uniquekey"]  = dtDynamicFields.Rows[i]["DisplayName"].ToString();
                                    dr["key"]        = dtDynamicFields.Rows[i]["DisplayName"].ToString();
                                    dr["colType"]    = dtDynamicFields.Rows[i]["fieldType"].ToString();
                                    dr["Value"]      = dtDynamicFields.Rows[i]["FieldValue"].ToString();
                                    dr["isEditable"] = dtDynamicFields.Rows[i]["IsEditableByMember"].ToString();
                                    dr["isVisible"]  = "y";
                                    dtBuisness.Rows.Add(dr);
                                }
                            }
                        }
                    }

                    Memberdtls[0].personalMemberDetails = new List <PersonalMemberDetil>(0);
                    if (dtPersonal.Rows.Count > 0)
                    {
                        List <PersonalMemberDetil> personalMemberDetail = GlobalFuns.DataTableToList <PersonalMemberDetil>(dtPersonal);
                        Memberdtls[0].personalMemberDetails = personalMemberDetail;
                    }

                    Memberdtls[0].businessMemberDetails = new List <BusinessMemberDetail>(0);
                    if (dtBuisness.Rows.Count > 0)
                    {
                        List <BusinessMemberDetail> BusinessMemberDetail = GlobalFuns.DataTableToList <BusinessMemberDetail>(dtBuisness);
                        Memberdtls[0].businessMemberDetails = BusinessMemberDetail;
                    }


                    //=============================== Get Address Fields ===========================================
                    AddressList          memberAddress = new AddressList();
                    List <AddressResult> addressList   = new List <AddressResult>(0);
                    memberAddress.isResidanceAddrVisible = "n";
                    //memberAddress.isResidanceAddrVisible = (from e in dtSettings.AsEnumerable()
                    //                                        where e.Field<string>("DBColName") == "Residance_Address"
                    //                                        && e.Field<string>("fieldType") == "P"
                    //                                        select e.Field<string>("isVisible")).SingleOrDefault();

                    memberAddress.isBusinessAddrVisible = (from e in dtSettings.AsEnumerable()
                                                           where e.Field <string>("DBColName") == "Business_Address" &&
                                                           e.Field <string>("fieldType") == "B"
                                                           select e.Field <string>("isVisible")).SingleOrDefault();
                    if (dtAddress.Rows.Count > 0)
                    {
                        addressList = GlobalFuns.DataTableToList <AddressResult>(dtAddress);
                    }
                    memberAddress.addressResult  = addressList;
                    Memberdtls[0].addressDetails = memberAddress;

                    //=============================== Get Family Fields ===========================================
                    FamilyMemberDetails       familyDtl        = new FamilyMemberDetails();
                    List <FamilyMemberDetail> FamilyMemberlist = new List <FamilyMemberDetail>(0);
                    familyDtl.isVisible               = "n";
                    familyDtl.familyMemberDetail      = FamilyMemberlist;
                    Memberdtls[0].familyMemberDetails = familyDtl;

                    //familyDtl.isVisible = (from e in dtSettings.AsEnumerable()
                    //                       where e.Field<string>("DBColName") == "member_name"
                    //                       && e.Field<string>("fieldType") == "F"
                    //                       select e.Field<string>("isVisible")).SingleOrDefault();
                    //if (familyDtl.isVisible == "y")
                    //{
                    //    FamilyMemberlist = GlobalFuns.DataTableToList<FamilyMemberDetail>(dtFamilyMember);
                    //}
                    //familyDtl.familyMemberDetail = FamilyMemberlist;
                    //Memberdtls[0].familyMemberDetails = familyDtl;
                }
                return(Memberdtls[0]);
            }
            catch
            {
                throw;
            }
        }