Пример #1
0
        /// <summary>
        /// Méthode permettant de sauvegarder un utilisateur, create ou update
        /// </summary>
        /// <param name="registered"></param>
        /// <param name="token"></param>
        /// <returns></returns>
        public bool SaveUser(Registered registered, Token token)
        {
            RegisteredDTO e  = registered.DTO;
            DALWSR_Result r1 = dal.SaveUser(registered.DTO, token, CancellationToken.None);

            return(r1.IsSuccess);
        }
Пример #2
0
        public DALWSR_Result SaveUser(RegisteredDTO registered, Token tokenSend, CancellationToken cancel)
        {
            string    str = string.Concat(CnxString, ADR_SAVEUSER);
            WSR_Param p   = new WSR_Param()
            {
                { "save", registered }, { "token", tokenSend }
            };
            WSR_Result r = ConsumeWSR.Call(str, "POST", p, TypeSerializer.Json, cancel);

            return(new DALWSR_Result(r));
        }
Пример #3
0
        /// <summary>
        /// Méthode pour avoir les infos d'un utilisateur ayant un compte
        /// </summary>
        /// <param name="iduser"></param>
        /// <returns></returns>
        public Registered GetInfoUser(int iduser)
        {
            DALWSR_Result r1     = dal.GetUserByIdAsync(iduser, CancellationToken.None);
            RegisteredDTO regDto = (RegisteredDTO)r1.Data;

            if (regDto != null)
            {
                return(new Registered(regDto, GetStatus(regDto.StatusUser), GetTraining(regDto.TrainingUser)));
            }
            return(null);
        }
Пример #4
0
 /// <summary>
 /// Constructeur pour mapper dto en Registered
 /// </summary>
 /// <param name="dto"></param>
 /// <param name="objstatus"></param>
 /// <param name="objtraining"></param>
 public Registered(RegisteredDTO dto, Status objstatus, Training objtraining) : this()
 {
     IdUser        = dto.IdUser;
     ObjStatus     = objstatus;
     ObjTraining   = objtraining;
     NameUser      = dto.NameUser;
     FirstnameUser = dto.FirstnameUser;
     EmailUser     = dto.EmailUser;
     LoginUser     = dto.LoginUser;
     PwdUser       = TokenManager.GetPwd(Encoding.UTF8.GetString(Convert.FromBase64String(dto.PwdUser), 0, Convert.FromBase64String(dto.PwdUser).Length));
     KeywordUser   = dto.KeywordUser;
     DTO           = dto;
 }
Пример #5
0
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public Registered()
 {
     dal            = new DALClient();
     ListRegistered = new List <Registered>();
     IdUser         = Int_NullValue;
     ObjStatus      = null;
     NameUser       = String_NullValue;
     ObjTraining    = null;
     FirstnameUser  = String_NullValue;
     EmailUser      = String_NullValue;
     LoginUser      = String_NullValue;
     PwdUser        = String_NullValue;
     KeywordUser    = String_NullValue;
     DTO            = new RegisteredDTO();
 }
Пример #6
0
        public static bool IsTokenValid(Token token, RegisteredDTO registered)
        {
            bool     result    = false;
            long     timeStamp = token.Time;
            DateTime ts        = new DateTime(timeStamp);
            long     date      = DateTime.UtcNow.Ticks;
            DateTime d         = new DateTime(date);
            int      iduser    = token.IdUser;
            bool     expired   = Math.Abs((d - ts).TotalMinutes) > expMinute;

            if (!expired)
            {
                string computedToken = GenerateTokenWS(registered.LoginUser, registered.PwdUser);
                result = (token.TokenSpe == computedToken);
            }
            return(result);
        }
Пример #7
0
        public override DTOBase PopulateDTO(SqlDataReader reader)
        {
            RegisteredDTO r = new RegisteredDTO();

            if (!reader.IsDBNull(Ord_IdUser))
            {
                r.IdUser = Convert.ToInt32(reader.GetDecimal(Ord_IdUser));
            }
            if (!reader.IsDBNull(Ord_IdStatus))
            {
                r.StatusUser = Convert.ToInt32(reader.GetDecimal(Ord_IdStatus));
            }
            if (!reader.IsDBNull(Ord_IdTraining))
            {
                r.TrainingUser = Convert.ToInt32(reader.GetDecimal(Ord_IdTraining));
            }
            if (!reader.IsDBNull(Ord_Name))
            {
                r.NameUser = reader.GetString(Ord_Name);
            }
            if (!reader.IsDBNull(Ord_Firstname))
            {
                r.FirstnameUser = reader.GetString(Ord_Firstname);
            }
            if (!reader.IsDBNull(Ord_Email))
            {
                r.EmailUser = reader.GetString(Ord_Email);
            }
            if (!reader.IsDBNull(Ord_Login))
            {
                r.LoginUser = reader.GetString(Ord_Login);
            }
            if (!reader.IsDBNull(Ord_Pwd))
            {
                r.PwdUser = reader.GetString(Ord_Pwd);
            }
            if (!reader.IsDBNull(Ord_Keyword))
            {
                r.KeywordUser = reader.GetString(Ord_Keyword);
            }

            r.IsNew = true;
            return(r);
        }
Пример #8
0
        /// <summary>
        /// Méthode pour sauvegarder un utilisateur (save et update)
        /// </summary>
        /// <param name="registered"></param>
        public void SaveUser(ref RegisteredDTO registered)
        {
            SqlCommand   command        = new SqlCommand();
            SqlParameter paramNewUserId = new SqlParameter();
            bool         isNewRecord    = false;

            if (registered.IdUser.Equals(Common.DTOBase.Int_NullValue))
            {
                command        = GetDbSprocCommand("INSERTUSER");
                paramNewUserId = CreateOutputParameter("@NEWUSERID", SqlDbType.Int);
                command.Parameters.Add(paramNewUserId);
                isNewRecord = true;
            }
            else
            {
                command = GetDbSprocCommand("UPDATEUSERS");
                command.Parameters.Add(CreateParameter("@ID", registered.IdUser));
            }

            command.Parameters.Add(CreateParameter("@IDSTATUS", registered.StatusUser));
            command.Parameters.Add(CreateParameter("@IDTRAINING", registered.TrainingUser));
            command.Parameters.Add(CreateParameter("@NAME", registered.NameUser, 50));
            command.Parameters.Add(CreateParameter("@FIRSTNAME", registered.FirstnameUser, 50));
            command.Parameters.Add(CreateParameter("@EMAIL", registered.EmailUser, 100));
            command.Parameters.Add(CreateParameter("@LOGIN", registered.LoginUser, 50));
            command.Parameters.Add(CreateParameter("@PASSWORD", registered.PwdUser, 1024));
            command.Parameters.Add(CreateParameter("@KEYWORD", registered.KeywordUser, 50));

            // Exécute la commande.
            command.Connection.Open();
            int nb = command.ExecuteNonQuery();

            command.Connection.Close();
            if (nb == 1)
            {
                if (isNewRecord && nb == 1)
                {
                    registered.IdUser = (int)paramNewUserId.Value;
                }
                //TODO return sur l'exécution des requetes insert et update
            }
            // S'il s'agit d'un nouvel enregistrement, attribut un nouvel id à l'objet.
        }
Пример #9
0
        /// <summary>
        /// Méthode permettant d'obtenir la liste de messages par sujet
        /// </summary>
        public void GetListMessagesByTopic()
        {
            ListMessagesByTopic.Clear();
            DALWSR_Result r1 = dal.GetMessagesByTopicAsync(IdTopic, CancellationToken.None);
            Registered    reg;

            if (r1.Data != null)
            {
                foreach (MessageDTO item in (List <MessageDTO>)r1.Data)
                {
                    DALWSR_Result r2       = dal.GetTopicByIdAsync(item.IdTopic, CancellationToken.None);
                    TopicDTO      topicDto = (TopicDTO)r2.Data;
                    DALWSR_Result r3       = dal.GetUserByIdAsync(item.IdUser, CancellationToken.None);
                    RegisteredDTO regDto   = (RegisteredDTO)r3.Data;
                    reg             = new Registered();
                    reg.ObjStatus   = reg.GetStatus(regDto.StatusUser);
                    reg.ObjTraining = reg.GetTraining(regDto.TrainingUser);
                    ListMessagesByTopic.Add(new Message(item, new Registered(regDto, reg.ObjStatus, reg.ObjTraining)));
                }
            }
        }
Пример #10
0
        /// <summary>
        /// Méthode permettant d'obtenir la liste des sujets par rubrique
        /// </summary>
        public void GetListTopicsByRubric()
        {
            ListTopicsByRubric.Clear();
            DALWSR_Result r1 = dal.GetTopicByRubricAsync(IdRubric, CancellationToken.None);

            if (r1.Data != null)
            {
                Registered reg;
                foreach (TopicDTO item in (List <TopicDTO>)r1.Data)
                {
                    DALWSR_Result r2     = dal.GetRubricByIdAsync(item.IdRubric, CancellationToken.None);
                    RubricDTO     rubric = (RubricDTO)r2.Data;
                    DALWSR_Result r3     = dal.GetUserByIdAsync(item.IdUser, CancellationToken.None);
                    RegisteredDTO regDto = (RegisteredDTO)r3.Data;
                    reg             = new Registered();
                    reg.ObjStatus   = reg.GetStatus(regDto.StatusUser);
                    reg.ObjTraining = reg.GetTraining(regDto.TrainingUser);
                    ListTopicsByRubric.Add(new Topic(item, new Registered(regDto, reg.ObjStatus, reg.ObjTraining), new Rubric(rubric)));
                }
            }
        }
Пример #11
0
        public WSR_Result SaveUser(WSR_Param param)
        {
            RegisteredDTO registered = null;
            object        data       = null;
            WSR_Result    result     = null;

            Token token = null;

            result = VerifParamType(param, "token", out token);
            if (result == null)
            {
                //token = (Token)param["token"];
                //TokenDb dbToken = new TokenDb();
                //RegisteredDTO regToken = dbToken.GetInfoAuth(token);

                //if (TokenManager.IsTokenValid(token, regToken))
                // {
                result = VerifParamType(param, "save", out registered);

                if (result == null)
                {
                    registered = (RegisteredDTO)param["save"];
                    RegisteredDb db = new RegisteredDb();
                    db.SaveUser(ref registered);
                    data = registered;
                    return(new WSR_Result(data, true));
                }
                else
                {
                    return(result);
                }
            }
            else
            {
                return(result);
            }
            //}
            //else return result;
        }
Пример #12
0
 /// <summary>
 /// Constructeur complet
 /// </summary>
 /// <param name="iduser"></param>
 /// <param name="objstatus"></param>
 /// <param name="objtraining"></param>
 /// <param name="nameuser"></param>
 /// <param name="firstnameuser"></param>
 /// <param name="emailuser"></param>
 /// <param name="loginuser"></param>
 /// <param name="pwduser"></param>
 /// <param name="keyworduser"></param>
 public Registered(int iduser, Status objstatus, Training objtraining, string nameuser, string firstnameuser,
                   string emailuser, string loginuser, string pwduser, string keyworduser) : this()
 {
     IdUser            = iduser;
     ObjStatus         = objstatus;
     NameUser          = nameuser;
     FirstnameUser     = firstnameuser;
     EmailUser         = emailuser;
     LoginUser         = loginuser;
     PwdUser           = pwduser;
     KeywordUser       = keyworduser;
     DTO               = new RegisteredDTO();
     DTO.IdUser        = iduser;
     DTO.StatusUser    = objstatus.IdStatus;
     DTO.TrainingUser  = objtraining.IdTraining;
     DTO.NameUser      = nameuser;
     DTO.FirstnameUser = firstnameuser;
     DTO.EmailUser     = emailuser;
     DTO.LoginUser     = loginuser;
     DTO.PwdUser       = TokenManager.HashPwd(LoginUser, PwdUser);
     DTO.KeywordUser   = keyworduser;
 }
Пример #13
0
 public Registered(RegisteredDTO dto, Status status, Training training)
 {
     this.Data         = dto;
     this.DataStatus   = status;
     this.DataTraining = training;
 }