Ejemplo n.º 1
0
        public static async Task <ERROR_ID> CreateAsync(string userID, string pw)
        {
            var hasUser = await CheckHasUserAsync(userID);

            if (hasUser)
            {
                return(ERROR_ID.CREATE_ACCOUNT_DUPLICATE);
            }


            var    uid      = UniqueSeqNumberGenerator.채번_받아오기();
            string hashPW   = MD5Core.GetHashString(pw);
            var    authUser = new DBUserAccountInfo()
            {
                _id = userID,
                PW  = hashPW,
                UID = uid,
            };

            var collection = Mongo.GetAccountDBCollection <DBUserAccountInfo>(COLLECTION_NAME);
            var result     = await Task.Run(() => collection.Insert <DBUserAccountInfo>(authUser));

            if (result.Ok == false)
            {
                return(ERROR_ID.CREATE_ACCOUNT_DB_FAIL);
            }

            return(ERROR_ID.NONE);
        }
Ejemplo n.º 2
0
        public static async Task <bool> InsertItem(string userID, List <int> ItemIDList)
        {
            try
            {
                var newItemList = new List <DBUserItem>();

                foreach (var itemID in ItemIDList)
                {
                    var newData = new DBUserItem()
                    {
                        _id             = UniqueSeqNumberGenerator.채번_받아오기(),
                        UserID          = userID,
                        ItemID          = itemID,
                        AcquireDateTime = DateTime.Now,
                    };

                    newItemList.Add(newData);
                }

                var collection = Common.GetDBCollection <DBUserItem>("Item");
                await collection.InsertManyAsync(newItemList);

                return(true);
            }
            catch (Exception ex)
            {
                DevLog.Write(ex.Message, LOG_LEVEL.ERROR);
                return(false);
            }
        }
Ejemplo n.º 3
0
        public static async Task <long> AddUser(string userID, string pw)
        {
            try
            {
                //유니크 번호 받아오기
                var uid = UniqueSeqNumberGenerator.GetUniqueNumber();

                //초기화
                var user = new DB.DBUser()
                {
                    UID = uid,
                    _id = userID,
                    PW  = pw,
                };

                //추가 추가가 안되면 예외
                var collection = DB.MongoDBLib.GetAccountDBUserCollection <DB.DBUser>();
                var option     = new InsertOneOptions();
                option.BypassDocumentValidation = true;
                await collection.InsertOneAsync(user, option);

                return(uid);
            }
            catch (Exception)
            {
                //즉 0이면 이미 존재하는 유저
                return(0);
            }
        }