private void SaveMemberAddresses(Guid memberId, EF6.MemberApply4TempVip objTempVip) { // English Address var enAddressTypeId = MemberAddressTypeEx.GetIdByCode("ADDR_EN"); string enAddress = objTempVip.ADDRESS1 + Environment.NewLine + objTempVip.ADDRESS2 + Environment.NewLine + objTempVip.ADDRESS3 + Environment.NewLine + objTempVip.ADDRESS4; SaveMemberAddress(memberId, enAddress, objTempVip.TELW, objTempVip.TELH, objTempVip.FAX, objTempVip.TELOTHER, objTempVip.TELP, enAddressTypeId); // Chinese Address var chAddressTypeId = MemberAddressTypeEx.GetIdByCode("ADDR_CN"); string chAddress = objTempVip.ADDRESS1C + Environment.NewLine + objTempVip.ADDRESS2C + Environment.NewLine + objTempVip.ADDRESS3C + Environment.NewLine + objTempVip.ADDRESS4C; SaveMemberAddress(memberId, chAddress, objTempVip.TELW, objTempVip.TELH, objTempVip.FAX, objTempVip.TELOTHER, objTempVip.TELP, chAddressTypeId); }
private void SaveMemberSmartTags(Guid memberId, EF6.MemberApply4TempVip objTempVip) { // 1.Grade this.SaveMemberSmartTag(memberId, GetSmartTagId("Grade", 1), objTempVip.GRADE); // 2.Sex this.SaveMemberSmartTag(memberId, GetSmartTagId("Sex", 2), objTempVip.SEX); // 3.Race this.SaveMemberSmartTag(memberId, GetSmartTagId("Race", 3), objTempVip.RACE); // 4.Age Group this.SaveMemberSmartTag(memberId, GetSmartTagId("Age Group", 4), objTempVip.AGE_GROUP); // 5.CodeNumber this.SaveMemberSmartTag(memberId, GetSmartTagId("CodeNumber", 5), objTempVip.CODENUM); // 6.LoyaltyNum this.SaveMemberSmartTag(memberId, GetSmartTagId("LoyaltyNum", 6), objTempVip.LOYALTYNUM); // 7.Profile this.SaveMemberSmartTag(memberId, GetSmartTagId("Profile", 7), objTempVip.PROFILE); // 8.DOB this.SaveMemberSmartTag(memberId, GetSmartTagId("DOB", 8), objTempVip.DATE_BIRTH.Value.ToString("yyyy-MM-dd")); // 9.DOR this.SaveMemberSmartTag(memberId, GetSmartTagId("DOR", 9), objTempVip.DATE_REGIS.Value.ToString("yyyy-MM-dd")); // 10.HKID this.SaveMemberSmartTag(memberId, GetSmartTagId("HKID", 10), objTempVip.ID_NO); // 11.Nationalit this.SaveMemberSmartTag(memberId, GetSmartTagId("Nationalit", 11), objTempVip.NATION); // 12.Email this.SaveMemberSmartTag(memberId, GetSmartTagId("Email", 12), objTempVip.EMAIL); // 13.ComName EN this.SaveMemberSmartTag(memberId, GetSmartTagId("ComName EN", 13), objTempVip.COMPNAME); // 14.ComName CN this.SaveMemberSmartTag(memberId, GetSmartTagId("ComName CN", 14), objTempVip.COMPNAMEC); }
private void SaveMemberVip(Guid memberId, EF6.MemberApply4TempVip objTempVip) { using (var ctx = new EF6.RT2020Entities()) { string query = "MemberId = '" + memberId.ToString() + "'"; var oVip = ctx.MemberVipData.Where(x => x.MemberId == memberId).FirstOrDefault(); if (oVip == null) { oVip = new EF6.MemberVipData(); oVip.MemberVipId = Guid.NewGuid(); oVip.MemberId = memberId; oVip.VipNumber = objTempVip.VIPNO; ctx.MemberVipData.Add(oVip); } oVip.CARD_ISSUE = objTempVip.CARD_ISSUE; oVip.CARD_EXPIRE = objTempVip.CARD_EXPIRE; oVip.CARD_NAME = objTempVip.CARD_NAME; oVip.CARD_RECEIVE = objTempVip.CARD_RECEIVE.Value; oVip.CARD_ACTIVE = objTempVip.CARD_ACTIVE.Value; oVip.FORMER_PPNO = objTempVip.FORMER_PPNO; oVip.MigrationDate = objTempVip.DATE_MIGRATE; oVip.CommencementDate = objTempVip.DATE_COMM; oVip.CreditLimit = objTempVip.ACREDIT; oVip.CreditTerms = objTempVip.TERMS; oVip.PaymentDiscount = (decimal)objTempVip.PYDISC; oVip.AddOnDiscount = objTempVip.BADDONDISC == "Y" ? true : false; oVip.StaffQuota = objTempVip.STAFF_QUOTA; ctx.SaveChanges(); var memberVipId = oVip.MemberVipId; #region this.UpdateLoo(oVip.MemberVipId, objTempVip); var oVipLoo = ctx.MemberVipLineOfOperation.Where(x => x.MemberVipId == memberVipId).FirstOrDefault(); if (oVipLoo == null) { oVipLoo = new EF6.MemberVipLineOfOperation(); oVipLoo.VipLooId = Guid.NewGuid(); oVipLoo.VipLooId = System.Guid.NewGuid(); oVipLoo.MemberVipId = memberVipId; oVipLoo.LineOfOperationId = LineOfOperationEx.GetLineOfOperationIdByName(objTempVip.LOOID); ctx.MemberVipLineOfOperation.Add(oVipLoo); } oVipLoo.NormalDiscount = (decimal)objTempVip.NRDISC; oVipLoo.PromotionDiscount = (decimal)objTempVip.PRO_DISC; ctx.SaveChanges(); #endregion #region this.UpdateSupplement(oVip.MemberVipId, objTempVip); var oSupplement = ctx.MemberVipSupplement.Where(x => x.MemberVipId == memberVipId).FirstOrDefault(); if (oSupplement == null) { oSupplement = new EF6.MemberVipSupplement(); oSupplement.VipSupplementId = Guid.NewGuid(); oSupplement.VipSupplementId = System.Guid.NewGuid(); oSupplement.MemberVipId = memberVipId; oSupplement.CustomerNumber = objTempVip.CUSTNUM; oSupplement.BRANCH = objTempVip.BRANCH; ctx.MemberVipSupplement.Add(oSupplement); } oSupplement.Remarks1 = objTempVip.R1; oSupplement.Remarks2 = objTempVip.R2; oSupplement.Remarks3 = objTempVip.R3; oSupplement.Nature = objTempVip.NATURE; oSupplement.Memo = objTempVip.MEMO; oSupplement.Photo = objTempVip.PHOTO; oSupplement.MostVisitedMalls1 = objTempVip.MALL1; oSupplement.MostVisitedMalls2 = objTempVip.MALL2; oSupplement.MostVisitedMalls3 = objTempVip.MALL3; oSupplement.MostBoughtBrands1 = objTempVip.BRAND1; oSupplement.MostBoughtBrands2 = objTempVip.BRAND2; oSupplement.MostBoughtBrands3 = objTempVip.BRAND3; oSupplement.MostReadMagazine1 = objTempVip.MAGAZINE1; oSupplement.MostReadMagazine2 = objTempVip.MAGAZINE2; oSupplement.MostReadMagazine3 = objTempVip.MAGAZINE3; oSupplement.MostUsedCreditCards1 = objTempVip.CARD1; oSupplement.MostUsedCreditCards2 = objTempVip.CARD2; oSupplement.MostUsedCreditCards3 = objTempVip.CARD3; ctx.SaveChanges(); #endregion } }
private Guid SaveMemberCoreData(EF6.MemberApply4TempVip objTempVip, bool canDelete) { Guid result = Guid.Empty, memberId = Guid.Empty; bool isNew = false; var memberNumber = objTempVip.VIPNO.Trim(); using (var ctx = new EF6.RT2020Entities()) { var objMember = ctx.Member.Where(x => x.MemberNumber == memberNumber).FirstOrDefault(); if (objMember == null) { #region add new Member isNew = true; objMember = new EF6.Member(); objMember.MemberId = Guid.NewGuid(); objMember.MemberNumber = objTempVip.VIPNO; objMember.CreatedBy = ConfigHelper.CurrentUserId; objMember.CreatedOn = DateTime.Now; objMember.Retired = false; objMember.RetiredBy = Guid.Empty; objMember.RetiredOn = new DateTime(1900, 1, 1); ctx.Member.Add(objMember); #endregion } #region Check the temp vip DLFLAG if (objTempVip.DLFLAG.Trim().Length > 0) { switch (objTempVip.DLFLAG.Trim().ToUpper()) { case "A": case "": default: objMember.Status = (int)EnumHelper.Status.Active; break; case "M": objMember.Status = (int)EnumHelper.Status.Modified; break; case "D": objMember.Status = (int)EnumHelper.Status.Deleted; break; case "I": objMember.Status = (int)EnumHelper.Status.Inactive; break; } } else { objMember.Status = ctx.Entry(objMember).State == EntityState.Added ? (int)EnumHelper.Status.Active : (int)EnumHelper.Status.Modified; } #endregion #region Option 2. Migrate Temporary VIP to Permanent VIP With Delete if (canDelete) { objMember.Status = (int)EnumHelper.Status.Deleted; } #endregion #region update Member core data objMember.WorkplaceId = Guid.Empty; objMember.ClassId = MemberHelper.GetClassId(objTempVip.PHONEBOOK); //Class objMember.GroupId = MemberHelper.GetGroupId(objTempVip.GROUP); objMember.MemberInitial = objTempVip.NNAME; // Nick Name objMember.SalutationId = MemberHelper.GetSaluteId(objTempVip.SALUTE); objMember.FirstName = objTempVip.FNAME; // First Name objMember.LastName = objTempVip.LNAME; // Last Name objMember.FullName = objTempVip.FNAME + "," + objTempVip.LNAME; // Full Name objMember.FullName_Chs = objTempVip.CNAME; // Chinese Name (S) objMember.FullName_Cht = objTempVip.CNAME; // Chinese Name (T) objMember.JobTitleId = JobTitleEx.GetJobTitleIdByName(objTempVip.TITLE); objMember.AssignedTo = Guid.Empty; objMember.Remarks = objTempVip.REMARKS; objMember.NormalDiscount = (decimal)objTempVip.NRDISC; objMember.DownloadToPOS = true; objMember.ModifiedBy = ConfigHelper.CurrentUserId; objMember.ModifiedOn = DateTime.Now; if (objMember.Status == (int)EnumHelper.Status.Deleted || objMember.Status == (int)EnumHelper.Status.Inactive) { objMember.Retired = false; objMember.RetiredBy = Guid.Empty; objMember.RetiredOn = new DateTime(1900, 1, 1); } #endregion ctx.SaveChanges(); result = memberId = objMember.MemberId; } return(result); }