Example #1
0
        //암호화 처리
        public MemberAccountBlockLog EncryptResult(MemberAccountBlockLog item)
        {
            try
            {
                item.MemberAccountBlockID = Crypto.AES_encrypt(item.MemberAccountBlockID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID             = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberAccountBlockReasonCategory1 = Crypto.AES_encrypt(item.MemberAccountBlockReasonCategory1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberAccountBlockReasonCategory2 = Crypto.AES_encrypt(item.MemberAccountBlockReasonCategory2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberAccountBlockReasonCategory3 = Crypto.AES_encrypt(item.MemberAccountBlockReasonCategory3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberAccountBlockReason          = Crypto.AES_encrypt(item.MemberAccountBlockReason, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberAccountBlockProcess         = Crypto.AES_encrypt(item.MemberAccountBlockProcess, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1  = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2  = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3  = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4  = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5  = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6  = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7  = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8  = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9  = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10 = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public GameEvents EncryptResult(GameEvents item)
        {
            try
            {
                item.GameEventID    = Crypto.AES_encrypt(item.GameEventID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EventCategory1 = Crypto.AES_encrypt(item.EventCategory1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EventCategory2 = Crypto.AES_encrypt(item.EventCategory2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EventCategory3 = Crypto.AES_encrypt(item.EventCategory3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemListID     = Crypto.AES_encrypt(item.ItemListID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCount      = Crypto.AES_encrypt(item.ItemCount, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Itemstatus     = Crypto.AES_encrypt(item.Itemstatus, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetGroup    = Crypto.AES_encrypt(item.TargetGroup, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetOS       = Crypto.AES_encrypt(item.TargetOS, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetDevice   = Crypto.AES_encrypt(item.TargetDevice, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EventImageLink = Crypto.AES_encrypt(item.EventImageLink, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Title          = Crypto.AES_encrypt(item.Title, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Content        = Crypto.AES_encrypt(item.Content, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1          = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2          = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3          = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4          = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5          = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6          = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7          = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8          = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9          = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10         = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public Notices EncryptResult(Notices item)
        {
            try
            {
                item.NoticeID        = Crypto.AES_encrypt(item.NoticeID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.NoticeCategory1 = Crypto.AES_encrypt(item.NoticeCategory1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.NoticeCategory2 = Crypto.AES_encrypt(item.NoticeCategory2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.NoticeCategory3 = Crypto.AES_encrypt(item.NoticeCategory3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetGroup     = Crypto.AES_encrypt(item.TargetGroup, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetOS        = Crypto.AES_encrypt(item.TargetOS, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.TargetDevice    = Crypto.AES_encrypt(item.TargetDevice, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.NoticeImageLink = Crypto.AES_encrypt(item.NoticeImageLink, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.title           = Crypto.AES_encrypt(item.title, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.content         = Crypto.AES_encrypt(item.content, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1           = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2           = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3           = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4           = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5           = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6           = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7           = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8           = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9           = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10          = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #4
0
        //암호화 처리
        public CouponMember EncryptResult(CouponMember item)
        {
            try
            {
                item.CouponMemberID = Crypto.AES_encrypt(item.CouponMemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.CouponID       = Crypto.AES_encrypt(item.CouponID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID       = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1          = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2          = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3          = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4          = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5          = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6          = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7          = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8          = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9          = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10         = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public GameEventMember EncryptResult(GameEventMember item)
        {
            try
            {
                item.GameEventMemberID = Crypto.AES_encrypt(item.GameEventMemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.eventID           = Crypto.AES_encrypt(item.eventID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.GameEvents.Title  = Crypto.AES_encrypt(item.GameEvents.Title, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID          = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1     = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1             = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2             = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3             = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4             = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5             = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6             = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7             = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8             = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9             = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10            = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #6
0
        public MemberItems EncryptResult(MemberItems result)
        {
            result.GetType().GetProperties().ToList().ForEach(p =>
            {
                // Edit이나 Create의 경우는 필드를 체크할 필요 없음. - EF의 특성임.

                // Edit에서 암호화 시작
                if (p.Name == "IteamUpdateAdminID" || p.Name == "IteamCreateAdminID" || p.Name == "Id" || p.Name == "Version" || p.Name == "Deleted" || p.Name == "CreatedAt" || p.Name == "UpdatedAt" || p.Name == "HideYN" || p.Name == "DeleteYN")       // 현재 암호화 안하고 통과 시킬 녀석들
                {
                    // 추가 처리
                }
                else
                {
                    // edit을 저장하려 할 경우 EF에서 빈문자열의 경우 null이 들어오고 처리 되지 않는다.
                    // view에서 annotation?
                    // EF의 특성

                    // string이 아닌 datetimeoffset 등에서도 오류가 발생한다. int도 발생하겠지.
                    // reflection 쓰지 말까...
                    Debug.WriteLine(p.PropertyType.FullName);
                    Debug.WriteLine((p.GetValue(result, null) ?? "").ToString());

                    p.SetValue(result, Crypto.AES_encrypt((p.GetValue(result, null) ?? "").ToString(), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV), null);   // null인 경우 오류 가능성. 빈문자열로 치환해 암호화 한다.
                }
            });

            return(result);
        }
        //암호화 처리
        public GiftDepositories EncryptResult(GiftDepositories item)
        {
            try
            {
                item.GiftDepositoryID = Crypto.AES_encrypt(item.GiftDepositoryID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemListID       = Crypto.AES_encrypt(item.ItemListID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCount        = Crypto.AES_encrypt(item.ItemCount, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.FromMemberID     = Crypto.AES_encrypt(item.FromMemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1    = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ToMemberID       = Crypto.AES_encrypt(item.ToMemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members1.Name1   = Crypto.AES_encrypt(item.Members1.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1            = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2            = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3            = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4            = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5            = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6            = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7            = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8            = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9            = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10           = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public Members EncryptResult(Members item)
        {
            try
            {
                item.MemberID         = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberPWD        = Crypto.AES_encrypt(item.MemberPWD, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EmailAddress     = Crypto.AES_encrypt(item.EmailAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EmailConfirmedYN = Crypto.AES_encrypt(item.EmailConfirmedYN, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PhoneNumber1     = Crypto.AES_encrypt(item.PhoneNumber1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PhoneNumber2     = Crypto.AES_encrypt(item.PhoneNumber2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PINumber         = Crypto.AES_encrypt(item.PINumber, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Name1            = Crypto.AES_encrypt(item.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Name2            = Crypto.AES_encrypt(item.Name2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Name3            = Crypto.AES_encrypt(item.Name3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.DOB                      = Crypto.AES_encrypt(item.DOB, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.RecommenderID            = Crypto.AES_encrypt(item.RecommenderID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberGroup              = Crypto.AES_encrypt(item.MemberGroup, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.LastDeviceID             = Crypto.AES_encrypt(item.LastDeviceID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.LastIPaddress            = Crypto.AES_encrypt(item.LastIPaddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.LastLoginDT              = Crypto.AES_encrypt(item.LastLoginDT, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.LastLogoutDT             = Crypto.AES_encrypt(item.LastLogoutDT, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.LastMACAddress           = Crypto.AES_encrypt(item.LastMACAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.AccountBlockYN           = Crypto.AES_encrypt(item.AccountBlockYN, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.AccountBlockEndDT        = Crypto.AES_encrypt(item.AccountBlockEndDT, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.AnonymousYN              = Crypto.AES_encrypt(item.AnonymousYN, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.C3rdAuthProvider         = Crypto.AES_encrypt(item.C3rdAuthProvider, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.C3rdAuthID               = Crypto.AES_encrypt(item.C3rdAuthID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.C3rdAuthParam            = Crypto.AES_encrypt(item.C3rdAuthParam, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PushNotificationID       = Crypto.AES_encrypt(item.PushNotificationID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PushNotificationProvider = Crypto.AES_encrypt(item.PushNotificationProvider, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PushNotificationGroup    = Crypto.AES_encrypt(item.PushNotificationGroup, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1                    = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2                    = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3                    = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4                    = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5                    = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6                    = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7                    = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8                    = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9                    = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10                   = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public MemberItemPurchases EncryptResult(MemberItemPurchases item)
        {
            try
            {
                item.MemberItemPurchaseID = Crypto.AES_encrypt(item.MemberItemPurchaseID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID             = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1        = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemListID           = Crypto.AES_encrypt(item.ItemListID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemLists.ItemName   = Crypto.AES_encrypt(item.ItemLists.ItemName, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchasePrice        = Crypto.AES_encrypt(item.PurchasePrice, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseQuantity     = Crypto.AES_encrypt(item.PurchaseQuantity, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PGinfo1                        = Crypto.AES_encrypt(item.PGinfo1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PGinfo2                        = Crypto.AES_encrypt(item.PGinfo2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PGinfo3                        = Crypto.AES_encrypt(item.PGinfo3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PGinfo4                        = Crypto.AES_encrypt(item.PGinfo4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PGinfo5                        = Crypto.AES_encrypt(item.PGinfo5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseDeviceID               = Crypto.AES_encrypt(item.PurchaseDeviceID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseDeviceIPAddress        = Crypto.AES_encrypt(item.PurchaseDeviceIPAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseDeviceMACAddress       = Crypto.AES_encrypt(item.PurchaseDeviceMACAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseDT                     = Crypto.AES_encrypt(item.PurchaseDT, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelYN               = Crypto.AES_encrypt(item.PurchaseCancelYN, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelDT               = Crypto.AES_encrypt(item.PurchaseCancelDT, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelingStatus        = Crypto.AES_encrypt(item.PurchaseCancelingStatus, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelReturnedAmount   = Crypto.AES_encrypt(item.PurchaseCancelReturnedAmount, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelDeviceID         = Crypto.AES_encrypt(item.PurchaseCancelDeviceID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelDeviceIPAddress  = Crypto.AES_encrypt(item.PurchaseCancelDeviceIPAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.PurchaseCancelDeviceMACAddress = Crypto.AES_encrypt(item.PurchaseCancelDeviceMACAddress, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1  = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2  = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3  = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4  = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5  = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6  = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7  = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8  = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9  = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10 = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public ItemLists EncryptResult(ItemLists item)
        {
            try
            {
                item.ItemListID      = Crypto.AES_encrypt(item.ItemListID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemName        = Crypto.AES_encrypt(item.ItemName, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemDescription = Crypto.AES_encrypt(item.ItemDescription, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemPrice       = Crypto.AES_encrypt(item.ItemPrice, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemSellPrice   = Crypto.AES_encrypt(item.ItemSellPrice, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCategory1   = Crypto.AES_encrypt(item.ItemCategory1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCategory2   = Crypto.AES_encrypt(item.ItemCategory2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCategory3   = Crypto.AES_encrypt(item.ItemCategory3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1           = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2           = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3           = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4           = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5           = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6           = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7           = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8           = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9           = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10          = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);

                //result.GetType().GetProperties().ToList().ForEach(p =>
                //{
                //    // 암호화 안할 항복 체크
                //    if (p.Name == "IteamUpdateAdminID" || p.Name == "IteamCreateAdminID" || p.Name == "HideYN" || p.Name == "DeleteYN" || p.Name == "CreatedAt" || p.Name == "UpdatedAt" || p.Name == "DataFromRegion" || p.Name == "DataFromRegionDT")
                //    {
                //        // 추가 처리
                //    }
                //    else
                //    {
                //        Debug.WriteLine(p.PropertyType.FullName);
                //        Debug.WriteLine((p.GetValue(result, null) ?? "").ToString());
                //        p.SetValue(result, Crypto.AES_encrypt((p.GetValue(result, null) ?? "").ToString(), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV), null);   // null인 경우 오류 가능성. 빈문자열로 치환해 암호화 한다.
                //    }
                //});
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #11
0
        //암호화 처리
        public MemberItems EncryptResult(MemberItems item)
        {
            try
            {
                item.MemberItemID       = Crypto.AES_encrypt(item.MemberItemID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID           = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1      = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemListID         = Crypto.AES_encrypt(item.ItemListID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemLists.ItemName = Crypto.AES_encrypt(item.ItemLists.ItemName, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemCount          = Crypto.AES_encrypt(item.ItemCount, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ItemStatus         = Crypto.AES_encrypt(item.ItemStatus, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1  = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2  = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3  = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4  = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5  = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6  = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7  = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8  = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9  = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10 = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);

                //result.GetType().GetProperties().ToList().ForEach(p =>
                //{
                //    // Edit에서 암호화 시작
                //    if (p.Name == "HideYN" || p.Name == "DeleteYN" || p.Name == "CreatedAt" || p.Name == "UpdatedAt" || p.Name == "DataFromRegion" || p.Name == "DataFromRegionDT")
                //    {
                //        // 추가 처리
                //    }
                //    else
                //    {
                //        Debug.WriteLine(p.PropertyType.FullName);
                //        Debug.WriteLine((p.GetValue(result, null) ?? "").ToString());
                //        p.SetValue(result, Crypto.AES_encrypt((p.GetValue(result, null) ?? "").ToString(), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV), null);   // null인 경우 오류 가능성. 빈문자열로 치환해 암호화 한다.
                //    }
                //});
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #12
0
        //암호화 처리
        public MemberGameInfoStages EncryptResult(MemberGameInfoStages item)
        {
            try
            {
                item.MemberGameInfoStageID = Crypto.AES_encrypt(item.MemberGameInfoStageID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.MemberID      = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1 = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageName     = Crypto.AES_encrypt(item.StageName, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStatus   = Crypto.AES_encrypt(item.StageStatus, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Category1     = Crypto.AES_encrypt(item.Category1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Category2     = Crypto.AES_encrypt(item.Category2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Category3     = Crypto.AES_encrypt(item.Category3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Mission1      = Crypto.AES_encrypt(item.Mission1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Mission2      = Crypto.AES_encrypt(item.Mission2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Mission3      = Crypto.AES_encrypt(item.Mission3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Mission4      = Crypto.AES_encrypt(item.Mission4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Mission5      = Crypto.AES_encrypt(item.Mission5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Points        = Crypto.AES_encrypt(item.Points, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStat1    = Crypto.AES_encrypt(item.StageStat1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStat2    = Crypto.AES_encrypt(item.StageStat2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStat3    = Crypto.AES_encrypt(item.StageStat3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStat4    = Crypto.AES_encrypt(item.StageStat4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.StageStat5    = Crypto.AES_encrypt(item.StageStat5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1         = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2         = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3         = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4         = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5         = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6         = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7         = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8         = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9         = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10        = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
        //암호화 처리
        public ServerInfo EncryptResult(ServerInfo item)
        {
            try
            {
                item.InfoID            = Crypto.AES_encrypt(item.InfoID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.FEServerLists     = Crypto.AES_encrypt(item.FEServerLists, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.SocketServerLists = Crypto.AES_encrypt(item.SocketServerLists, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Version           = Crypto.AES_encrypt(item.Version, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.ResourceLink      = Crypto.AES_encrypt(item.ResourceLink, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.EULAText          = Crypto.AES_encrypt(item.EULAText, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1             = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2             = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3             = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4             = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5             = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #14
0
        //암호화 처리
        public MemberGameInfoes EncryptResult(MemberGameInfoes item)
        {
            try
            {
                item.MemberID      = Crypto.AES_encrypt(item.MemberID, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Members.Name1 = Crypto.AES_encrypt(item.Members.Name1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Level         = Crypto.AES_encrypt(item.Level, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Exps          = Crypto.AES_encrypt(item.Exps, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.Points        = Crypto.AES_encrypt(item.Points, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT1     = Crypto.AES_encrypt(item.UserSTAT1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT2     = Crypto.AES_encrypt(item.UserSTAT2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT3     = Crypto.AES_encrypt(item.UserSTAT3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT4     = Crypto.AES_encrypt(item.UserSTAT4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT5     = Crypto.AES_encrypt(item.UserSTAT5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT6     = Crypto.AES_encrypt(item.UserSTAT6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT7     = Crypto.AES_encrypt(item.UserSTAT7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT8     = Crypto.AES_encrypt(item.UserSTAT8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT9     = Crypto.AES_encrypt(item.UserSTAT9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.UserSTAT10    = Crypto.AES_encrypt(item.UserSTAT10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol1         = Crypto.AES_encrypt(item.sCol1, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol2         = Crypto.AES_encrypt(item.sCol2, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol3         = Crypto.AES_encrypt(item.sCol3, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol4         = Crypto.AES_encrypt(item.sCol4, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol5         = Crypto.AES_encrypt(item.sCol5, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol6         = Crypto.AES_encrypt(item.sCol6, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol7         = Crypto.AES_encrypt(item.sCol7, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol8         = Crypto.AES_encrypt(item.sCol8, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol9         = Crypto.AES_encrypt(item.sCol9, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                item.sCol10        = Crypto.AES_encrypt(item.sCol10, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
            }
            catch (Exception)
            {
                throw;
            }

            return(item);
        }
Example #15
0
        public HttpResponseMessage Post(SelItem1InputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <SelItem1InputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.MemberID, this.User as ClaimsPrincipal);

            p.MemberID = sid;

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            List <SelItem1Model> result          = new List <SelItem1Model>();
            HttpResponseMessage  response        = new HttpResponseMessage();
            EncryptedData        encryptedResult = new EncryptedData();

            try
            {
                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspSelItem1", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@ItemListID", SqlDbType.NVarChar, -1).Value = p.ItemListID;
                        connection.OpenWithRetry(retryPolicy);

                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                SelItem1Model workItem = new SelItem1Model()
                                {
                                    ItemListID      = dreader[0].ToString(),
                                    ItemName        = dreader[1].ToString(),
                                    ItemDescription = dreader[2].ToString(),
                                    ItemPrice       = dreader[3].ToString(),
                                    ItemSellPrice   = dreader[4].ToString(),
                                    ItemCategory1   = dreader[5].ToString(),
                                    ItemCategory2   = dreader[6].ToString(),
                                    ItemCategory3   = dreader[7].ToString(),
                                    sCol1           = dreader[8].ToString(),
                                    sCol2           = dreader[9].ToString(),
                                    sCol3           = dreader[10].ToString(),
                                    sCol4           = dreader[11].ToString(),
                                    sCol5           = dreader[12].ToString(),
                                    sCol6           = dreader[13].ToString(),
                                    sCol7           = dreader[14].ToString(),
                                    sCol8           = dreader[15].ToString(),
                                    sCol9           = dreader[16].ToString(),
                                    sCol10          = dreader[17].ToString(),
                                };
                                result.Add(workItem);
                            }
                            dreader.Close();
                        }
                        connection.Close();
                    }

                    /// Encrypt the result response
                    if (globalVal.CloudBreadCryptSetting == "AES256")
                    {
                        try
                        {
                            encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(result), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                            response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                            return(response);
                        }
                        catch (Exception ex)
                        {
                            ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                            throw ex;
                        }
                    }

                    response = Request.CreateResponse(HttpStatusCode.OK, result);
                    return(response);
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.MemberID;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBSelItem1Controller";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
Example #16
0
        // GET
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)   // 검색 방식 테스트 + 페이징
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from mi in db.MemberItems.ToList()
                                  join il in db.ItemLists on mi.ItemListID equals il.ItemListID
                                  join m in db.Members on mi.MemberID equals m.MemberID
                                  select new MemberItems()
                {
                    MemberItemID     = mi.MemberItemID,
                    MemberID         = mi.MemberID,
                    ItemListID       = mi.ItemListID,
                    ItemCount        = mi.ItemCount,
                    ItemStatus       = mi.ItemStatus,
                    sCol1            = mi.sCol1,
                    sCol2            = mi.sCol2,
                    sCol3            = mi.sCol3,
                    sCol4            = mi.sCol4,
                    sCol5            = mi.sCol5,
                    sCol6            = mi.sCol6,
                    sCol7            = mi.sCol7,
                    sCol8            = mi.sCol8,
                    sCol9            = mi.sCol9,
                    sCol10           = mi.sCol10,
                    HideYN           = mi.HideYN,
                    DeleteYN         = mi.DeleteYN,
                    CreatedAt        = mi.CreatedAt,
                    UpdatedAt        = mi.UpdatedAt,
                    DataFromRegion   = mi.DataFromRegion,
                    DataFromRegionDT = mi.DataFromRegionDT,
                    ItemLists        = new ItemLists()
                    {
                        ItemName = il.ItemName
                    },
                    Members = new Members()
                    {
                        Name1 = m.Name1
                    }
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "MemberItemID":
                        queryString = queryString.Where(s => s.MemberItemID.Contains(searchString));
                        break;

                    case "MemberID":
                        queryString = queryString.Where(s => s.MemberID.Contains(searchString));
                        break;

                    case "ItemListID":
                        queryString = queryString.Where(s => s.ItemListID.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }



                //result = result.Include(x => x.itemList.ItemName);

                //var result = db.MemberItems.SqlQuery("SELECT MemberItems.MemberItemID,MemberItems.MemberID,MemberItems.ItemListID,MemberItems.ItemCount,MemberItems.ItemStatus,MemberItems.sCol1,MemberItems.sCol2,MemberItems.sCol3,MemberItems.sCol4,MemberItems.sCol5,MemberItems.sCol6,MemberItems.sCol7,MemberItems.sCol8,MemberItems.sCol9,MemberItems.sCol10,MemberItems.HideYN,MemberItems.DeleteYN,MemberItems.CreatedAt,MemberItems.UpdatedAt,MemberItems.DataFromRegion,MemberItems.DataFromRegionDT,ItemLists.ItemName as ItemName FROM MemberItems inner join ItemLists on MemberItems.ItemListID = ItemLists.ItemListID").ToList();

                //MemberItems.CreatedAt = UserTime.GetUserTime(MemberItems.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                //MemberItems.UpdatedAt = UserTime.GetUserTime(MemberItems.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                //result = result.ToList<MemberItems>;

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "MemberItemsController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "MemberItemsController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        public HttpResponseMessage Post(DWMarketCheckInputParam p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <DWMarketCheckInputParam>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);


            HttpResponseMessage response        = new HttpResponseMessage();
            EncryptedData       encryptedResult = new EncryptedData();

            try
            {
                DWMarketCheckModel result = GetResult(p);

                /// Encrypt the result response
                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    try
                    {
                        encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(result), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                        response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                        return(response);
                    }
                    catch (Exception ex)
                    {
                        ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                        throw ex;
                    }
                }

                response = Request.CreateResponse(HttpStatusCode.OK, result);
                return(response);
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = "Version Check";
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "DWMarketVersionCheckController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: ServerInfo
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from si in db.ServerInfo.ToList()
                                  select new ServerInfo()
                {
                    InfoID            = si.InfoID,
                    FEServerLists     = si.FEServerLists,
                    SocketServerLists = si.SocketServerLists,
                    Version           = si.Version,
                    ResourceLink      = si.ResourceLink,
                    EULAText          = si.EULAText,
                    sCol1             = si.sCol1,
                    sCol2             = si.sCol2,
                    sCol3             = si.sCol3,
                    sCol4             = si.sCol4,
                    sCol5             = si.sCol5,
                    CreatedAt         = si.CreatedAt,
                    UpdatedAt         = si.UpdatedAt,
                    DataFromRegion    = si.DataFromRegion,
                    DataFromRegionDT  = si.DataFromRegionDT
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "InfoID":
                        queryString = queryString.Where(s => s.InfoID.Contains(searchString));
                        break;

                    case "FEServerLists":
                        queryString = queryString.Where(s => s.FEServerLists.Contains(searchString));
                        break;

                    case "SocketServerLists":
                        queryString = queryString.Where(s => s.SocketServerLists.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - CreatedAt으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }


                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "ServerInfoController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "ServerInfoController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        public HttpResponseMessage Post(SelLoginInfoInputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <SelLoginInfoInputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.memberID, this.User as ClaimsPrincipal);

            p.memberID = sid;

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            List <SelLoginInfoModel> result          = new List <SelLoginInfoModel>();
            HttpResponseMessage      response        = new HttpResponseMessage();
            EncryptedData            encryptedResult = new EncryptedData();

            try
            {
                // start task log
                //logMessage.memberID = p.memberID;
                //logMessage.Level = "INFO";
                //logMessage.Logger = "CBSelLoginInfoController";
                //logMessage.Message = jsonParam;
                //Logging.RunLog(logMessage);

                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspSelLoginInfo", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@MemberID", SqlDbType.NVarChar, -1).Value       = p.memberID;
                        command.Parameters.Add("@MemberPWD", SqlDbType.NVarChar, -1).Value      = p.memberPWD;
                        command.Parameters.Add("@LastDeviceID", SqlDbType.NVarChar, -1).Value   = p.memberPWD;
                        command.Parameters.Add("@LastIPaddress", SqlDbType.NVarChar, -1).Value  = p.memberPWD;
                        command.Parameters.Add("@LastMACAddress", SqlDbType.NVarChar, -1).Value = p.memberPWD;

                        connection.OpenWithRetry(retryPolicy);

                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                SelLoginInfoModel workItem = new SelLoginInfoModel()
                                {
                                    MemberID         = dreader[0].ToString(),
                                    MemberPWD        = dreader[1].ToString(),
                                    EmailAddress     = dreader[2].ToString(),
                                    EmailConfirmedYN = dreader[3].ToString(),
                                    PhoneNumber1     = dreader[4].ToString(),
                                    PhoneNumber2     = dreader[5].ToString(),
                                    PINumber         = dreader[6].ToString(),
                                    Name1            = dreader[7].ToString(),
                                    Name2            = dreader[8].ToString(),
                                    Name3            = dreader[9].ToString(),
                                    DOB                      = dreader[10].ToString(),
                                    RecommenderID            = dreader[11].ToString(),
                                    MemberGroup              = dreader[12].ToString(),
                                    LastDeviceID             = dreader[13].ToString(),
                                    LastIPaddress            = dreader[14].ToString(),
                                    LastLoginDT              = dreader[15].ToString(),
                                    LastLogoutDT             = dreader[16].ToString(),
                                    LastMACAddress           = dreader[17].ToString(),
                                    AccountBlockYN           = dreader[18].ToString(),
                                    AccountBlockEndDT        = dreader[19].ToString(),
                                    AnonymousYN              = dreader[20].ToString(),
                                    _3rdAuthProvider         = dreader[21].ToString(),
                                    _3rdAuthID               = dreader[22].ToString(),
                                    _3rdAuthParam            = dreader[23].ToString(),
                                    PushNotificationID       = dreader[24].ToString(),
                                    PushNotificationProvider = dreader[25].ToString(),
                                    PushNotificationGroup    = dreader[26].ToString(),
                                    sCol1                    = dreader[27].ToString(),
                                    sCol2                    = dreader[28].ToString(),
                                    sCol3                    = dreader[29].ToString(),
                                    sCol4                    = dreader[30].ToString(),
                                    sCol5                    = dreader[31].ToString(),
                                    sCol6                    = dreader[32].ToString(),
                                    sCol7                    = dreader[33].ToString(),
                                    sCol8                    = dreader[34].ToString(),
                                    sCol9                    = dreader[35].ToString(),
                                    sCol10                   = dreader[36].ToString()
                                };
                                result.Add(workItem);
                            }
                            dreader.Close();
                        }
                        connection.Close();

                        // end task log
                        logMessage.memberID = p.memberID;
                        logMessage.Level    = "INFO";
                        logMessage.Logger   = "CBSelLoginInfoController";
                        logMessage.Message  = jsonParam;
                        Logging.RunLog(logMessage);
                    }
                    /// Encrypt the result response
                    if (globalVal.CloudBreadCryptSetting == "AES256")
                    {
                        try
                        {
                            encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(result), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                            response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                            return(response);
                        }
                        catch (Exception ex)
                        {
                            ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                            throw ex;
                        }
                    }

                    response = Request.CreateResponse(HttpStatusCode.OK, result);
                    return(response);
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.memberID;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBSelLoginInfoController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
Example #20
0
        public HttpResponseMessage Post(InsRegMemberInputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <InsRegMemberInputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.MemberID_Members, this.User as ClaimsPrincipal);

            p.MemberID_Members = sid;

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            HttpResponseMessage response        = new HttpResponseMessage();
            EncryptedData       encryptedResult = new EncryptedData();
            RowcountResult      rowcountResult  = new RowcountResult();

            try
            {
                // task start log
                //logMessage.memberID = p.MemberID_Members;
                //logMessage.Level = "INFO";
                //logMessage.Logger = "CBuspInsRegMemberCheckController";
                //logMessage.Message = jsonParam;
                //Logging.RunLog(logMessage);

                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspInsRegMember", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@MemberID_Members", SqlDbType.NVarChar, -1).Value         = p.MemberID_Members;
                        command.Parameters.Add("@MemberPWD_Members", SqlDbType.NVarChar, -1).Value        = p.MemberPWD_Members;
                        command.Parameters.Add("@EmailAddress_Members", SqlDbType.NVarChar, -1).Value     = p.EmailAddress_Members;
                        command.Parameters.Add("@EmailConfirmedYN_Members", SqlDbType.NVarChar, -1).Value = p.EmailConfirmedYN_Members;
                        command.Parameters.Add("@PhoneNumber1_Members", SqlDbType.NVarChar, -1).Value     = p.PhoneNumber1_Members;
                        command.Parameters.Add("@PhoneNumber2_Members", SqlDbType.NVarChar, -1).Value     = p.PhoneNumber2_Members;
                        command.Parameters.Add("@PINumber_Members", SqlDbType.NVarChar, -1).Value         = p.PINumber_Members;
                        command.Parameters.Add("@Name1_Members", SqlDbType.NVarChar, -1).Value            = p.Name1_Members;
                        command.Parameters.Add("@Name2_Members", SqlDbType.NVarChar, -1).Value            = p.Name2_Members;
                        command.Parameters.Add("@Name3_Members", SqlDbType.NVarChar, -1).Value            = p.Name3_Members;
                        command.Parameters.Add("@DOB_Members", SqlDbType.NVarChar, -1).Value                      = p.DOB_Members;
                        command.Parameters.Add("@RecommenderID_Members", SqlDbType.NVarChar, -1).Value            = p.RecommenderID_Members;
                        command.Parameters.Add("@MemberGroup_Members", SqlDbType.NVarChar, -1).Value              = p.MemberGroup_Members;
                        command.Parameters.Add("@LastDeviceID_Members", SqlDbType.NVarChar, -1).Value             = p.LastDeviceID_Members;
                        command.Parameters.Add("@LastIPaddress_Members", SqlDbType.NVarChar, -1).Value            = p.LastIPaddress_Members;
                        command.Parameters.Add("@LastLoginDT_Members", SqlDbType.NVarChar, -1).Value              = p.LastLoginDT_Members;
                        command.Parameters.Add("@LastLogoutDT_Members", SqlDbType.NVarChar, -1).Value             = p.LastLogoutDT_Members;
                        command.Parameters.Add("@LastMACAddress_Members", SqlDbType.NVarChar, -1).Value           = p.LastMACAddress_Members;
                        command.Parameters.Add("@AccountBlockYN_Members", SqlDbType.NVarChar, -1).Value           = p.AccountBlockYN_Members;
                        command.Parameters.Add("@AccountBlockEndDT_Members", SqlDbType.NVarChar, -1).Value        = p.AccountBlockEndDT_Members;
                        command.Parameters.Add("@AnonymousYN_Members", SqlDbType.NVarChar, -1).Value              = p.AnonymousYN_Members;
                        command.Parameters.Add("@3rdAuthProvider_Members", SqlDbType.NVarChar, -1).Value          = p._3rdAuthProvider_Members;
                        command.Parameters.Add("@3rdAuthID_Members", SqlDbType.NVarChar, -1).Value                = p._3rdAuthID_Members;
                        command.Parameters.Add("@3rdAuthParam_Members", SqlDbType.NVarChar, -1).Value             = p._3rdAuthParam_Members;
                        command.Parameters.Add("@PushNotificationID_Members", SqlDbType.NVarChar, -1).Value       = p.PushNotificationID_Members;
                        command.Parameters.Add("@PushNotificationProvider_Members", SqlDbType.NVarChar, -1).Value = p.PushNotificationProvider_Members;
                        command.Parameters.Add("@PushNotificationGroup_Members", SqlDbType.NVarChar, -1).Value    = p.PushNotificationGroup_Members;
                        command.Parameters.Add("@sCol1_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol1_Members;
                        command.Parameters.Add("@sCol2_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol2_Members;
                        command.Parameters.Add("@sCol3_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol3_Members;
                        command.Parameters.Add("@sCol4_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol4_Members;
                        command.Parameters.Add("@sCol5_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol5_Members;
                        command.Parameters.Add("@sCol6_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol6_Members;
                        command.Parameters.Add("@sCol7_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol7_Members;
                        command.Parameters.Add("@sCol8_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol8_Members;
                        command.Parameters.Add("@sCol9_Members", SqlDbType.NVarChar, -1).Value                    = p.sCol9_Members;
                        command.Parameters.Add("@sCol10_Members", SqlDbType.NVarChar, -1).Value                   = p.sCol10_Members;
                        command.Parameters.Add("@TimeZoneID_Members", SqlDbType.NVarChar, -1).Value               = p.TimeZoneID_Members;
                        command.Parameters.Add("@Level_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.Level_MemberGameInfoes;
                        command.Parameters.Add("@Exps_MemberGameInfoes", SqlDbType.NVarChar, -1).Value            = p.Exps_MemberGameInfoes;
                        command.Parameters.Add("@Points_MemberGameInfoes", SqlDbType.NVarChar, -1).Value          = p.Points_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT1_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT1_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT2_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT2_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT3_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT3_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT4_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT4_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT5_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT5_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT6_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT6_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT7_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT7_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT8_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT8_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT9_MemberGameInfoes", SqlDbType.NVarChar, -1).Value       = p.UserSTAT9_MemberGameInfoes;
                        command.Parameters.Add("@UserSTAT10_MemberGameInfoes", SqlDbType.NVarChar, -1).Value      = p.UserSTAT10_MemberGameInfoes;
                        command.Parameters.Add("@sCol1_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol1_MemberGameInfoes;
                        command.Parameters.Add("@sCol2_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol2_MemberGameInfoes;
                        command.Parameters.Add("@sCol3_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol3_MemberGameInfoes;
                        command.Parameters.Add("@sCol4_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol4_MemberGameInfoes;
                        command.Parameters.Add("@sCol5_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol5_MemberGameInfoes;
                        command.Parameters.Add("@sCol6_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol6_MemberGameInfoes;
                        command.Parameters.Add("@sCol7_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol7_MemberGameInfoes;
                        command.Parameters.Add("@sCol8_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol8_MemberGameInfoes;
                        command.Parameters.Add("@sCol9_MemberGameInfoes", SqlDbType.NVarChar, -1).Value           = p.sCol9_MemberGameInfoes;
                        command.Parameters.Add("@sCol10_MemberGameInfoes", SqlDbType.NVarChar, -1).Value          = p.sCol10_MemberGameInfoes;

                        connection.OpenWithRetry(retryPolicy);
                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                rowcountResult.result = dreader[0].ToString();
                            }
                            dreader.Close();
                        }
                        connection.Close();

                        // task end log
                        logMessage.memberID = p.MemberID_Members;
                        logMessage.Level    = "INFO";
                        logMessage.Logger   = "CBuspInsRegMemberCheckController";
                        logMessage.Message  = jsonParam;
                        Logging.RunLog(logMessage);

                        /// Encrypt the result response
                        if (globalVal.CloudBreadCryptSetting == "AES256")
                        {
                            try
                            {
                                encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(rowcountResult), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                                response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                                return(response);
                            }
                            catch (Exception ex)
                            {
                                ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                                throw ex;
                            }
                        }

                        response = Request.CreateResponse(HttpStatusCode.OK, rowcountResult);
                        return(response);
                    }
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.MemberID_Members;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBuspInsRegMemberCheckController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
Example #21
0
        // GET: MemberAccountBlockLogs
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from mab in db.MemberAccountBlockLog.ToList()
                                  join m in db.Members on mab.MemberID equals m.MemberID
                                  select new MemberAccountBlockLog()
                {
                    MemberAccountBlockID = mab.MemberAccountBlockID,
                    MemberID             = mab.MemberID,
                    MemberAccountBlockReasonCategory1 = mab.MemberAccountBlockReasonCategory1,
                    MemberAccountBlockReasonCategory2 = mab.MemberAccountBlockReasonCategory2,
                    MemberAccountBlockReasonCategory3 = mab.MemberAccountBlockReasonCategory3,
                    MemberAccountBlockReason          = mab.MemberAccountBlockReason,
                    MemberAccountBlockProcess         = mab.MemberAccountBlockProcess,
                    sCol1            = mab.sCol1,
                    sCol2            = mab.sCol2,
                    sCol3            = mab.sCol3,
                    sCol4            = mab.sCol4,
                    sCol5            = mab.sCol5,
                    sCol6            = mab.sCol6,
                    sCol7            = mab.sCol7,
                    sCol8            = mab.sCol8,
                    sCol9            = mab.sCol9,
                    sCol10           = mab.sCol10,
                    CreateAdminID    = mab.CreateAdminID,
                    HideYN           = mab.HideYN,
                    DeleteYN         = mab.DeleteYN,
                    CreatedAt        = mab.CreatedAt,
                    UpdatedAt        = mab.UpdatedAt,
                    DataFromRegion   = mab.DataFromRegion,
                    DataFromRegionDT = mab.DataFromRegionDT,
                    Members          = new Members()
                    {
                        Name1 = m.Name1
                    }
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "MemberAccountBlockID ":
                        queryString = queryString.Where(s => s.MemberAccountBlockID.Contains(searchString));
                        break;

                    case "MemberID ":
                        queryString = queryString.Where(s => s.MemberID.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - CreatedAt으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }



                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "MemberAccountBlockLogController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "MemberAccountBlockLogController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: Notices
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from n in db.Notices.ToList()
                                  select new Notices()
                {
                    NoticeID           = n.NoticeID,
                    NoticeCategory1    = n.NoticeCategory1,
                    NoticeCategory2    = n.NoticeCategory2,
                    NoticeCategory3    = n.NoticeCategory3,
                    TargetGroup        = n.TargetGroup,
                    TargetOS           = n.TargetOS,
                    TargetDevice       = n.TargetDevice,
                    NoticeImageLink    = n.NoticeImageLink,
                    title              = n.title,
                    content            = n.content,
                    sCol1              = n.sCol1,
                    sCol2              = n.sCol2,
                    sCol3              = n.sCol3,
                    sCol4              = n.sCol4,
                    sCol5              = n.sCol5,
                    sCol6              = n.sCol6,
                    sCol7              = n.sCol7,
                    sCol8              = n.sCol8,
                    sCol9              = n.sCol9,
                    sCol10             = n.sCol10,
                    NoticeDurationFrom = n.NoticeDurationFrom,
                    NoticeDurationTo   = n.NoticeDurationTo,
                    OrderNumber        = n.OrderNumber,
                    CreateAdminID      = n.CreateAdminID,
                    HideYN             = n.HideYN,
                    DeleteYN           = n.DeleteYN,
                    CreatedAt          = n.CreatedAt,
                    UpdatedAt          = n.UpdatedAt,
                    DataFromRegion     = n.DataFromRegion,
                    DataFromRegionDT   = n.DataFromRegionDT
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "NoticeID":
                        queryString = queryString.Where(s => s.NoticeID.Contains(searchString));
                        break;

                    case "NoticeCategory1":
                        queryString = queryString.Where(s => s.NoticeCategory1.Contains(searchString));
                        break;

                    case "TargetGroup":
                        queryString = queryString.Where(s => s.TargetGroup.Contains(searchString));
                        break;

                    case "Title":
                        queryString = queryString.Where(s => s.title.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.NoticeDurationFrom = UserTime.GetUserTime(item.NoticeDurationFrom.DateTime, Session["AdminTimeZone"].ToString());
                    item.NoticeDurationTo   = UserTime.GetUserTime(item.NoticeDurationTo.DateTime, Session["AdminTimeZone"].ToString());
                    item.CreatedAt          = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt          = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "NoticesController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "NoticesController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: Members
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from s in db.Members
                                  select s;

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "MemberID":
                        queryString = queryString.Where(s => s.MemberID.Contains(searchString));
                        break;

                    case "EmailAddress":
                        queryString = queryString.Where(s => s.EmailAddress.Contains(searchString));
                        break;

                    case "Name1":
                        queryString = queryString.Where(s => s.Name1.Contains(searchString));
                        break;

                    case "LastDeviceID":
                        queryString = queryString.Where(s => s.LastDeviceID.Contains(searchString));
                        break;

                    case "3rdAuthID":
                        queryString = queryString.Where(s => s.C3rdAuthID.Contains(searchString));
                        break;

                    case "PushNotificationID":
                        queryString = queryString.Where(s => s.PushNotificationID.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                //복호화 처리
                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "MembersController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }
            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "MembersController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
Example #24
0
        public HttpResponseMessage Post(ComUdtMemberItemPurchaseInputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <ComUdtMemberItemPurchaseInputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.MemberID, this.User as ClaimsPrincipal);

            p.MemberID = sid;

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            HttpResponseMessage response        = new HttpResponseMessage();
            EncryptedData       encryptedResult = new EncryptedData();
            RowcountResult      rowcountResult  = new RowcountResult();

            try
            {
                // task start log
                //logMessage.memberID = p.MemberID;
                //logMessage.Level = "INFO";
                //logMessage.Logger = "CBComUdtMemberItemPurchaseController";
                //logMessage.Message = jsonParam;
                //Logging.RunLog(logMessage);

                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspComUdtMemberItemPurchase", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@MemberItemPurchaseID", SqlDbType.NVarChar, -1).Value = p.MemberItemPurchaseID;
                        command.Parameters.Add("@MemberID", SqlDbType.NVarChar, -1).Value             = p.MemberID;
                        command.Parameters.Add("@ItemListID", SqlDbType.NVarChar, -1).Value           = p.ItemListID;
                        command.Parameters.Add("@PurchaseQuantity", SqlDbType.NVarChar, -1).Value     = p.PurchaseQuantity;
                        command.Parameters.Add("@PurchasePrice", SqlDbType.NVarChar, -1).Value        = p.PurchasePrice;
                        command.Parameters.Add("@PGinfo1", SqlDbType.NVarChar, -1).Value                        = p.PGinfo1;
                        command.Parameters.Add("@PGinfo2", SqlDbType.NVarChar, -1).Value                        = p.PGinfo2;
                        command.Parameters.Add("@PGinfo3", SqlDbType.NVarChar, -1).Value                        = p.PGinfo3;
                        command.Parameters.Add("@PGinfo4", SqlDbType.NVarChar, -1).Value                        = p.PGinfo4;
                        command.Parameters.Add("@PGinfo5", SqlDbType.NVarChar, -1).Value                        = p.PGinfo5;
                        command.Parameters.Add("@PurchaseDeviceID", SqlDbType.NVarChar, -1).Value               = p.PurchaseDeviceID;
                        command.Parameters.Add("@PurchaseDeviceIPAddress", SqlDbType.NVarChar, -1).Value        = p.PurchaseDeviceIPAddress;
                        command.Parameters.Add("@PurchaseDeviceMACAddress", SqlDbType.NVarChar, -1).Value       = p.PurchaseDeviceMACAddress;
                        command.Parameters.Add("@PurchaseDT", SqlDbType.NVarChar, -1).Value                     = p.PurchaseDT;
                        command.Parameters.Add("@PurchaseCancelYN", SqlDbType.NVarChar, -1).Value               = p.PurchaseCancelYN;
                        command.Parameters.Add("@PurchaseCancelDT", SqlDbType.NVarChar, -1).Value               = p.PurchaseCancelDT;
                        command.Parameters.Add("@PurchaseCancelingStatus", SqlDbType.NVarChar, -1).Value        = p.PurchaseCancelingStatus;
                        command.Parameters.Add("@PurchaseCancelReturnedAmount", SqlDbType.NVarChar, -1).Value   = p.PurchaseCancelReturnedAmount;
                        command.Parameters.Add("@PurchaseCancelDeviceID", SqlDbType.NVarChar, -1).Value         = p.PurchaseCancelDeviceID;
                        command.Parameters.Add("@PurchaseCancelDeviceIPAddress", SqlDbType.NVarChar, -1).Value  = p.PurchaseCancelDeviceIPAddress;
                        command.Parameters.Add("@PurchaseCancelDeviceMACAddress", SqlDbType.NVarChar, -1).Value = p.PurchaseCancelDeviceMACAddress;
                        command.Parameters.Add("@sCol1", SqlDbType.NVarChar, -1).Value  = p.sCol1;
                        command.Parameters.Add("@sCol2", SqlDbType.NVarChar, -1).Value  = p.sCol2;
                        command.Parameters.Add("@sCol3", SqlDbType.NVarChar, -1).Value  = p.sCol3;
                        command.Parameters.Add("@sCol4", SqlDbType.NVarChar, -1).Value  = p.sCol4;
                        command.Parameters.Add("@sCol5", SqlDbType.NVarChar, -1).Value  = p.sCol5;
                        command.Parameters.Add("@sCol6", SqlDbType.NVarChar, -1).Value  = p.sCol6;
                        command.Parameters.Add("@sCol7", SqlDbType.NVarChar, -1).Value  = p.sCol7;
                        command.Parameters.Add("@sCol8", SqlDbType.NVarChar, -1).Value  = p.sCol8;
                        command.Parameters.Add("@sCol9", SqlDbType.NVarChar, -1).Value  = p.sCol9;
                        command.Parameters.Add("@sCol10", SqlDbType.NVarChar, -1).Value = p.sCol10;

                        connection.OpenWithRetry(retryPolicy);
                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                rowcountResult.result = dreader[0].ToString();
                            }
                            dreader.Close();
                        }
                        connection.Close();

                        // task end log
                        logMessage.memberID = p.MemberID;
                        logMessage.Level    = "INFO";
                        logMessage.Logger   = "CBComUdtMemberItemPurchaseController";
                        logMessage.Message  = jsonParam;
                        Logging.RunLog(logMessage);

                        /// Encrypt the result response
                        if (globalVal.CloudBreadCryptSetting == "AES256")
                        {
                            try
                            {
                                encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(rowcountResult), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                                response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                                return(response);
                            }
                            catch (Exception ex)
                            {
                                ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                                throw ex;
                            }
                        }

                        response = Request.CreateResponse(HttpStatusCode.OK, rowcountResult);
                        return(response);
                    }
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.MemberID;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBComUdtMemberItemPurchaseController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
Example #25
0
        public HttpResponseMessage Post(UdtGameEventMemberToItemInputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <UdtGameEventMemberToItemInputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.MemberID_MemberItems, this.User as ClaimsPrincipal);

            p.MemberID_MemberItems     = sid;
            p.MemberID_GameEventMember = sid;

            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            HttpResponseMessage response        = new HttpResponseMessage();
            EncryptedData       encryptedResult = new EncryptedData();
            RowcountResult      rowcountResult  = new RowcountResult();

            try
            {
                // start task log
                //logMessage.memberID = p.MemberID_MemberItems;
                //logMessage.Level = "INFO";
                //logMessage.Logger = "CBUdtGameEventMemberToItemController";
                //logMessage.Message = jsonParam;
                //Logging.RunLog(logMessage);

                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspUdtGameEventMemberToItem", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@InsertORUpdate ", SqlDbType.NVarChar, -1).Value           = p.InsertORUpdate.ToUpper();
                        command.Parameters.Add("@MemberItemID_MemberItems ", SqlDbType.NVarChar, -1).Value = p.MemberItemID_MemberItems;
                        command.Parameters.Add("@MemberID_MemberItems", SqlDbType.NVarChar, -1).Value      = p.MemberID_MemberItems;
                        command.Parameters.Add("@ItemListID_MemberItems", SqlDbType.NVarChar, -1).Value    = p.ItemListID_MemberItems;
                        command.Parameters.Add("@ItemCount_MemberItems", SqlDbType.NVarChar, -1).Value     = p.ItemCount_MemberItems;
                        command.Parameters.Add("@ItemStatus_MemberItems", SqlDbType.NVarChar, -1).Value    = p.ItemStatus_MemberItems;
                        command.Parameters.Add("@sCol1_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol1_MemberItems;
                        command.Parameters.Add("@sCol2_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol2_MemberItems;
                        command.Parameters.Add("@sCol3_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol3_MemberItems;
                        command.Parameters.Add("@sCol4_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol4_MemberItems;
                        command.Parameters.Add("@sCol5_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol5_MemberItems;
                        command.Parameters.Add("@sCol6_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol6_MemberItems;
                        command.Parameters.Add("@sCol7_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol7_MemberItems;
                        command.Parameters.Add("@sCol8_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol8_MemberItems;
                        command.Parameters.Add("@sCol9_MemberItems", SqlDbType.NVarChar, -1).Value         = p.sCol9_MemberItems;
                        command.Parameters.Add("@sCol10_MemberItems", SqlDbType.NVarChar, -1).Value        = p.sCol10_MemberItems;
                        command.Parameters.Add("@eventID_GameEventMember", SqlDbType.NVarChar, -1).Value   = p.eventID_GameEventMember;
                        command.Parameters.Add("@MemberID_GameEventMember ", SqlDbType.NVarChar, -1).Value = p.MemberID_GameEventMember;
                        command.Parameters.Add("@sCol1_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol1_GameEventMember;
                        command.Parameters.Add("@sCol2_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol2_GameEventMember;
                        command.Parameters.Add("@sCol3_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol3_GameEventMember;
                        command.Parameters.Add("@sCol4_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol4_GameEventMember;
                        command.Parameters.Add("@sCol5_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol5_GameEventMember;
                        command.Parameters.Add("@sCol6_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol6_GameEventMember;
                        command.Parameters.Add("@sCol7_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol7_GameEventMember;
                        command.Parameters.Add("@sCol8_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol8_GameEventMember;
                        command.Parameters.Add("@sCol9_GameEventMember ", SqlDbType.NVarChar, -1).Value    = p.sCol9_GameEventMember;
                        command.Parameters.Add("@sCol10_GameEventMember ", SqlDbType.NVarChar, -1).Value   = p.sCol10_GameEventMember;

                        connection.OpenWithRetry(retryPolicy);
                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                rowcountResult.result = dreader[0].ToString();
                            }
                            dreader.Close();
                        }
                        connection.Close();

                        // end task log
                        logMessage.memberID = p.MemberID_MemberItems;
                        logMessage.Level    = "INFO";
                        logMessage.Logger   = "CBUdtGameEventMemberToItemController";
                        logMessage.Message  = jsonParam;
                        Logging.RunLog(logMessage);

                        /// Encrypt the result response
                        if (globalVal.CloudBreadCryptSetting == "AES256")
                        {
                            try
                            {
                                encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(rowcountResult), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                                response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                                return(response);
                            }
                            catch (Exception ex)
                            {
                                ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                                throw ex;
                            }
                        }

                        response = Request.CreateResponse(HttpStatusCode.OK, rowcountResult);
                        return(response);
                    }
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.MemberID_MemberItems;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBUdtGameEventMemberToItemController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: GiftDepositories
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from gd in db.GiftDepositories.ToList()
                                  join il in db.ItemLists on gd.ItemListID equals il.ItemListID
                                  join m in db.Members on gd.FromMemberID equals m.MemberID
                                  join m2 in db.Members on gd.ToMemberID equals m2.MemberID
                                  select new GiftDepositories()
                {
                    GiftDepositoryID = gd.GiftDepositoryID,
                    ItemListID       = gd.ItemListID,
                    ItemCount        = gd.ItemCount,
                    FromMemberID     = m.MemberID,
                    ToMemberID       = m2.MemberID,
                    sCol1            = gd.sCol1,
                    sCol2            = gd.sCol2,
                    sCol3            = gd.sCol3,
                    sCol4            = gd.sCol4,
                    sCol5            = gd.sCol5,
                    sCol6            = gd.sCol6,
                    sCol7            = gd.sCol7,
                    sCol8            = gd.sCol8,
                    sCol9            = gd.sCol9,
                    sCol10           = gd.sCol10,
                    SentMemberYN     = gd.SentMemberYN,
                    HideYN           = gd.HideYN,
                    DeleteYN         = gd.DeleteYN,
                    CreatedAt        = gd.CreatedAt,
                    UpdatedAt        = gd.UpdatedAt,
                    DataFromRegion   = gd.DataFromRegion,
                    DataFromRegionDT = gd.DataFromRegionDT,
                    ItemLists        = new ItemLists()
                    {
                        ItemName = il.ItemName
                    },
                    Members = new Members()
                    {
                        Name1 = m.Name1
                    },
                    Members1 = new Members()
                    {
                        Name1 = m2.Name1
                    }
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "GiftDepositoryID":
                        queryString = queryString.Where(s => s.GiftDepositoryID.Contains(searchString));
                        break;

                    case "ItemListID":
                        queryString = queryString.Where(s => s.ItemListID.Contains(searchString));
                        break;

                    case "FromMemberID":
                        queryString = queryString.Where(s => s.FromMemberID.Contains(searchString));
                        break;

                    case "ToMemberID":
                        queryString = queryString.Where(s => s.ToMemberID.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "GiftDepositoriesController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "GiftDepositoriesController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: ItemLists
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)   // 검색 방식 테스트 + 페이징
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from s in db.ItemLists
                                  select s;

                //from il in db.ItemLists
                //join mi in db.MemberItems
                //on il.ItemListID equals mi.ItemListID
                //select new{il.ItemListID, il.ItemName, il.ItemDescription, il.ItemPrice, il.ItemSellPrice, il.ItemCategory1, il.ItemCategory2, il.ItemCategory3, mi.MemberItemID, mi.MemberID};
                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "ItemID":
                        queryString = queryString.Where(s => s.ItemListID.Contains(searchString));
                        break;

                    case "ItemName":
                        queryString = queryString.Where(s => s.ItemName.Contains(searchString));
                        break;

                    case "ItemDescription":
                        queryString = queryString.Where(s => s.ItemDescription.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                //복호화 처리
                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "ItemListsController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }
            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "ItemListsController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: MemberItemPurchases
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)
        {
            try
            {
                // Index 세션체크
                if (!CheckSession())
                {
                    return(Redirect("/AdminLogin/Login"));
                }

                //페이징 기본 처리
                if (searchString != null)
                {
                    page = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                //암호화일 경우 searchString도 암호화해 검색 해야 한다.
                if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
                {
                    searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    ViewBag.CurrentFilter = searchString;
                }
                else
                {
                    ViewBag.CurrentFilter = searchString;
                }

                ViewBag.SearchCondition = SearchCondition;

                var queryString = from mip in db.MemberItemPurchases.ToList()
                                  join m in db.Members on mip.MemberID equals m.MemberID
                                  join il in db.ItemLists on mip.ItemListID equals il.ItemListID
                                  select new MemberItemPurchases()
                {
                    MemberItemPurchaseID = mip.MemberItemPurchaseID,
                    MemberID             = mip.MemberID,
                    ItemListID           = mip.ItemListID,
                    PurchasePrice        = mip.PurchasePrice,
                    PurchaseQuantity     = mip.PurchaseQuantity,
                    PGinfo1                        = mip.PGinfo1,
                    PGinfo2                        = mip.PGinfo2,
                    PGinfo3                        = mip.PGinfo3,
                    PGinfo4                        = mip.PGinfo4,
                    PGinfo5                        = mip.PGinfo5,
                    PurchaseDeviceID               = mip.PurchaseDeviceID,
                    PurchaseDeviceIPAddress        = mip.PurchaseDeviceIPAddress,
                    PurchaseDeviceMACAddress       = mip.PurchaseDeviceMACAddress,
                    PurchaseDT                     = mip.PurchaseDT,
                    PurchaseCancelYN               = mip.PurchaseCancelYN,
                    PurchaseCancelDT               = mip.PurchaseCancelDT,
                    PurchaseCancelingStatus        = mip.PurchaseCancelingStatus,
                    PurchaseCancelReturnedAmount   = mip.PurchaseCancelReturnedAmount,
                    PurchaseCancelDeviceID         = mip.PurchaseCancelDeviceID,
                    PurchaseCancelDeviceIPAddress  = mip.PurchaseCancelDeviceIPAddress,
                    PurchaseCancelDeviceMACAddress = mip.PurchaseCancelDeviceMACAddress,
                    sCol1  = mip.sCol1,
                    sCol2  = mip.sCol2,
                    sCol3  = mip.sCol3,
                    sCol4  = mip.sCol4,
                    sCol5  = mip.sCol5,
                    sCol6  = mip.sCol6,
                    sCol7  = mip.sCol7,
                    sCol8  = mip.sCol8,
                    sCol9  = mip.sCol9,
                    sCol10 = mip.sCol10,
                    PurchaseCancelConfirmAdminMemberID = mip.PurchaseCancelConfirmAdminMemberID,
                    HideYN           = mip.HideYN,
                    DeleteYN         = mip.DeleteYN,
                    CreatedAt        = mip.CreatedAt,
                    UpdatedAt        = mip.UpdatedAt,
                    DataFromRegion   = mip.DataFromRegion,
                    DataFromRegionDT = mip.DataFromRegionDT,

                    ItemLists = new ItemLists()
                    {
                        ItemName = il.ItemName
                    },
                    Members = new Members()
                    {
                        Name1 = m.Name1
                    }
                };

                if (!String.IsNullOrEmpty(searchString))
                {
                    switch (SearchCondition)
                    {
                    case "MemberItemPurchaseID":
                        queryString = queryString.Where(s => s.MemberItemPurchaseID.Contains(searchString));
                        break;

                    case "MemberID":
                        queryString = queryString.Where(s => s.MemberID.Contains(searchString));
                        break;

                    case "ItemListID":
                        queryString = queryString.Where(s => s.ItemListID.Contains(searchString));
                        break;

                    case "PurchaseDeviceID":
                        queryString = queryString.Where(s => s.PurchaseDeviceID.Contains(searchString));
                        break;

                    case "PurchaseCancelingStatus":
                        queryString = queryString.Where(s => s.PurchaseCancelingStatus.Contains(searchString));
                        break;

                    case "PurchaseCancelDeviceID":
                        queryString = queryString.Where(s => s.PurchaseCancelDeviceID.Contains(searchString));
                        break;

                    default:
                        break;
                    }
                }

                // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
                queryString = queryString.OrderByDescending(s => s.CreatedAt);
                int pageSize   = globalVal.CloudBreadAdminWebListPageSize;
                int pageNumber = (page ?? 1);
                var result     = queryString.ToPagedList(pageNumber, pageSize);

                if (globalVal.CloudBreadCryptSetting == "AES256")
                {
                    // 복호화
                    foreach (var item in result)
                    {
                        DecryptResult(item);
                    }
                }

                //날자 데이터 현지 시각으로 변환
                foreach (var item in result)
                {
                    item.PurchaseDT       = UserTime.GetUserTime(DateTime.Parse(item.PurchaseDT), Session["AdminTimeZone"].ToString()).ToString();
                    item.PurchaseCancelDT = UserTime.GetUserTime(DateTime.Parse(item.PurchaseCancelDT), Session["AdminTimeZone"].ToString()).ToString();

                    item.CreatedAt = UserTime.GetUserTime(item.CreatedAt.DateTime, Session["AdminTimeZone"].ToString());
                    item.UpdatedAt = UserTime.GetUserTime(item.UpdatedAt.DateTime, Session["AdminTimeZone"].ToString());
                }

                // 관리자 접근 로그
                logMessage.memberID = this.Session["AdminID"].ToString();
                logMessage.Level    = "INFO";
                logMessage.Logger   = "MemberItemPurchasesController-Index";
                logMessage.Message  = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                Logging.RunLog(logMessage);

                return(View(result));
            }

            catch (Exception ex)
            {
                //에러로그
                logMessage.memberID  = this.Session["AdminID"].ToString();
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "MemberItemPurchasesController-Index";
                logMessage.Message   = string.Format("SearchString : {0} , SearchCondition : {1}", searchString, SearchCondition);
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }
        // GET: ItemLists
        //public ActionResult Index(string sortOrder)   // 정렬 방식 테스트
        public ActionResult Index(string searchString, string SearchCondition, string currentFilter, int?page)   // 검색 방식 테스트 + 페이징
        {
            //ViewBag.CurrentSort = sortOrder;
            //ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "itemname_desc" : "";
            //ViewBag.DateSortParm = sortOrder == "Date" ? "date_desc" : "Date";


            // 정렬 처리
            //ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "ItemName" : "";
            //var result = from s in db.ItemLists
            //               select s;
            //switch (sortOrder)
            //{
            //    case "ItemName":
            //        result = result.OrderBy(s => s.ItemName);
            //        break;
            //    default:
            //        result = result.OrderBy(s => s.ItemName);
            //        break;
            //}

            //페이징 기본 처리
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            //암호화일 경우 searchString도 암호화해 검색 해야 한다.
            if (globalVal.CloudBreadCryptSetting == "AES256" && searchString != null)
            {
                searchString          = Crypto.AES_encrypt(searchString, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                ViewBag.CurrentFilter = searchString;
            }
            else
            {
                ViewBag.CurrentFilter = searchString;
            }

            ViewBag.SearchCondition = SearchCondition;

            var queryString = from s in db.ItemLists
                              select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                switch (SearchCondition)
                {
                case "ItemID":
                    queryString = queryString.Where(s => s.ItemListID.Contains(searchString));
                    break;

                case "ItemName":
                    queryString = queryString.Where(s => s.ItemName.Contains(searchString));
                    break;

                case "ItemDescription":
                    queryString = queryString.Where(s => s.ItemDescription.Contains(searchString));
                    break;

                default:
                    break;
                }
                //result = result.Where(s => s.ItemName.Contains(searchString)
                //                       || s.ItemListID.Contains(searchString)
                //                        || s.ItemDescription.Contains(searchString));
            }

            //switch (sortOrder)
            //{
            //    case "itemname_desc":
            //        result = result.OrderByDescending(s => s.ItemName);
            //        break;
            //    default:  // Name ascending
            //        result = result.OrderByDescending(s => s.ItemName);
            //        break;
            //}



            // 기본 order 처리 - ItemName으로 정렬 처리 - ToPagedList의 제약 조건
            queryString = queryString.OrderBy(s => s.ItemName);

            int pageSize   = 3;
            int pageNumber = (page ?? 1);

            //IQueryable로 할까 리포지토리 IEnumerable로 할까.
            // ToPagedList에 제약이 있네. IQueryable

            var result = queryString.ToPagedList(pageNumber, pageSize);

            // 데이터 복호화를 Controller에서 하는게 좋을까 View에서 하는게 좋을까.

            // result에 대해 복호화 작업 수행. reflection?
            //int i = 0;
            if (globalVal.CloudBreadCryptSetting == "AES256")
            {
                DecryptResult(result);      //PagedList 타입
            }


            //return View(queryString.ToPagedList(pageNumber, pageSize));
            return(View(result));
        }
        public HttpResponseMessage Post(SelSendEmailToMemberInputParams p)
        {
            // try decrypt data
            if (!string.IsNullOrEmpty(p.token) && globalVal.CloudBreadCryptSetting == "AES256")
            {
                try
                {
                    string decrypted = Crypto.AES_decrypt(p.token, globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                    p = JsonConvert.DeserializeObject <SelSendEmailToMemberInputParams>(decrypted);
                }
                catch (Exception ex)
                {
                    ex = (Exception)Activator.CreateInstance(ex.GetType(), "Decrypt Error", ex);
                    throw ex;
                }
            }

            // Get the sid or memberID of the current user.
            string sid = CBAuth.getMemberID(p.memberID, this.User as ClaimsPrincipal);

            p.memberID = sid;

            // check proper authentication of member who trigger this API (Admin or member with authorized)
            Logging.CBLoggers logMessage = new Logging.CBLoggers();
            string            jsonParam  = JsonConvert.SerializeObject(p);

            HttpResponseMessage response        = new HttpResponseMessage();
            EncryptedData       encryptedResult = new EncryptedData();
            RowcountResult      rowcountResult  = new RowcountResult();

            try
            {
                /// Database connection retry policy
                RetryPolicy retryPolicy = new RetryPolicy <SqlAzureTransientErrorDetectionStrategy>(globalVal.conRetryCount, TimeSpan.FromSeconds(globalVal.conRetryFromSeconds));
                using (SqlConnection connection = new SqlConnection(globalVal.DBConnectionString))
                {
                    using (SqlCommand command = new SqlCommand("uspSelSendEmailToMember", connection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add("@MemberID", SqlDbType.NVarChar, -1).Value = p.memberID;
                        connection.OpenWithRetry(retryPolicy);
                        using (SqlDataReader dreader = command.ExecuteReaderWithRetry(retryPolicy))
                        {
                            while (dreader.Read())
                            {
                                rowcountResult.result = dreader[0].ToString();
                            }
                            //////////////////////////////////////////////////////////////////////////////////////
                            //// mail sending module - reference CloudBreadlib/BAL/SendSMTPMail
                            //// check firewall, anti-virus and outbound traffic
                            //// in SendEmail lib, change your mail login info
                            //string s = SendSMTPMail.SendEmail(dreader[0].ToString(), "subject", "content");
                            //////////////////////////////////////////////////////////////////////////////////////

                            dreader.Close();
                        }
                        connection.Close();

                        /// Encrypt the result response
                        if (globalVal.CloudBreadCryptSetting == "AES256")
                        {
                            try
                            {
                                encryptedResult.token = Crypto.AES_encrypt(JsonConvert.SerializeObject(rowcountResult), globalVal.CloudBreadCryptKey, globalVal.CloudBreadCryptIV);
                                response = Request.CreateResponse(HttpStatusCode.OK, encryptedResult);
                                return(response);
                            }
                            catch (Exception ex)
                            {
                                ex = (Exception)Activator.CreateInstance(ex.GetType(), "Encrypt Error", ex);
                                throw ex;
                            }
                        }

                        response = Request.CreateResponse(HttpStatusCode.OK, rowcountResult);
                        return(response);  // or return mail send result string s
                    }
                }
            }

            catch (Exception ex)
            {
                // error log
                logMessage.memberID  = p.memberID;
                logMessage.Level     = "ERROR";
                logMessage.Logger    = "CBSelSendEmailToMemberController";
                logMessage.Message   = jsonParam;
                logMessage.Exception = ex.ToString();
                Logging.RunLog(logMessage);

                throw;
            }
        }