Ejemplo n.º 1
0
        public static string CheckLogin(DeverateContext context, string username, string password)
        {
            username = username.ToUpper();
            Account account = context.Account.Where(a => a.Username == username && a.IsActive == true).SingleOrDefault();

            if (account == null)
            {
                return(null);
            }
            bool?result = false;

            try
            {
                result = BCrypt.Net.BCrypt.Verify(password, account.Password);
            }
            catch (Exception e)
            {
                return(null);
            }

            if (result.Value == false)
            {
                return(null);
            }
            else
            {
                return(TokenManager.GenerateToken(account));
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Đánh giá rank dựa trên bài test
        /// </summary>
        /// <param name="db"></param>
        /// <param name="answers"></param>
        /// <returns></returns>
        public static RankPoint EvaluateRank(DeverateContext db, TestAnswerDTO answers)
        {
            double?totalPoint = CalculateResultPoint(db, answers);
            List <ConfigurationRankDTO> configurationRanks = GetRankPoint(db, answers);

            configurationRanks = configurationRanks.OrderBy(o => o.point).ToList();
            ConfigurationRankDTO tmp = new ConfigurationRankDTO();

            tmp.rankId = configurationRanks[0].rankId.Value;
            tmp.point  = configurationRanks[0].point;
            foreach (ConfigurationRankDTO cr in configurationRanks)
            {
                if (tmp.point > cr.point)
                {
                    tmp = cr;
                }
            }
            string rank = db.Rank.SingleOrDefault(r => r.RankId == tmp.rankId).Name;

            if (rank == null)
            {
                return(null);
            }
            return(new RankPoint(rank, tmp.point));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Lấy danh sách các bài test của user trong ngày
        /// </summary>
        /// <param name="db"></param>
        /// <param name="acccountId"></param>
        /// <returns></returns>
        public static List <ConfigurationDTO> GetAllConfigTestTodayByUsername(DeverateContext db, int?acccountId)
        {
            var result = from cf in db.Configuration
                         join t in db.Test on cf.ConfigId equals t.ConfigId
                         where t.AccountId == acccountId && t.IsActive == true && cf.StartDate <= DateTime.Now && DateTime.Now <= cf.EndDate
                         select new ConfigurationDTO(cf);

            return(result.ToList());
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Lấy câu trả lời của từng đâu hỏi
        /// </summary>
        /// <param name="db"></param>
        /// <param name="questionId"></param>
        /// <returns></returns>
        public static List <AnswerDTO> GetAnswerOfQuestion(DeverateContext db, int?questionId)
        {
            var answers = from q in db.Question
                          join a in db.Answer on q.QuestionId equals a.QuestionId
                          where q.QuestionId == questionId
                          select new AnswerDTO(a);

            return(answers.ToList());
        }
Ejemplo n.º 5
0
 public static CompanyDTO GetCompanyById(int?id)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var company = from com in db.Company
                       where com.CompanyId == id
                       select new CompanyDTO(com);
         return(company.FirstOrDefault());
     }
 }
Ejemplo n.º 6
0
 public static List <CompanyDTO> GetCompanyByName(string name)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var company = from com in db.Company
                       where com.Name.Contains(name)
                       select new CompanyDTO(com);
         return(company.ToList());
     }
 }
Ejemplo n.º 7
0
 public static List <ConfigurationDTO> GetAllConfiguration(bool isActive)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var configuration = from con in db.Configuration
                             where con.IsActive == isActive
                             select new ConfigurationDTO(con, con.CatalogueInConfiguration.ToList(), con.ConfigurationRank.ToList());
         return(configuration.ToList());
     }
 }
Ejemplo n.º 8
0
 public static List <QuestionDTO> GetAllQuestion()
 {
     using (DeverateContext context = new DeverateContext())
     {
         var question = from ques in context.Question
                        where ques.IsActive == true
                        select new QuestionDTO(ques, ques.Answer.ToList());
         return(question.ToList());
     }
 }
Ejemplo n.º 9
0
 public static List <RankDTO> GetAllRank(bool isActive)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var ranks = from rank in db.Rank
                     where rank.IsActive == isActive
                     select new RankDTO(rank);
         return(ranks.ToList().OrderByDescending(x => x.RankId).ToList());
     }
 }
Ejemplo n.º 10
0
 public static ConfigurationDTO GetConfigurationById(int id)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var configuration = from con in db.Configuration
                             where con.ConfigId == id
                             select new ConfigurationDTO(con, con.CatalogueInConfiguration.ToList(), con.ConfigurationRank.ToList());
         return(configuration.FirstOrDefault());
     }
 }
 public static List <CatalogueDTO> GetAllCatalogue()
 {
     using (DeverateContext context = new DeverateContext())
     {
         var catelogue = from cate in context.Catalogue
                         where cate.IsActive == true
                         select new CatalogueDTO(cate);
         return(catelogue.ToList());
     }
 }
Ejemplo n.º 12
0
 public static List <CompanyDTO> GetAllCompany(bool isActive)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var company = from com in db.Company
                       join acc in db.Account on com.CompanyId equals acc.CompanyId
                       where com.IsActive == isActive
                       select new CompanyDTO(acc.Company, acc.Fullname);
         return(company.ToList());
     }
 }
 public static List <ConfigurationRankDTO> GetAllRank(bool isActive)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var con = from configRank in db.ConfigurationRank
                   join config in db.Configuration on configRank.ConfigId equals config.ConfigId
                   join rank in db.Rank on configRank.RankId equals rank.RankId
                   where configRank.IsActive == isActive
                   select new ConfigurationRankDTO(configRank, config, rank);
         return(con.ToList());
     }
 }
 public static List <ConfigurationCatalogueDTO> GetConfigurationCatalogueByConfigId(int id)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var con = from configCata in db.CatalogueInConfiguration
                   join config in db.Configuration on configCata.ConfigId equals config.ConfigId
                   join cata in db.Catalogue on configCata.CatalogueId equals cata.CatalogueId
                   where configCata.ConfigId == id
                   select new ConfigurationCatalogueDTO(configCata, config, cata);
         return(con.ToList());
     }
 }
 public static List <ConfigurationCatalogueDTO> GetAllConfigurationCatalogue(bool isActive)
 {
     using (DeverateContext db = new DeverateContext())
     {
         var con = from configCata in db.CatalogueInConfiguration
                   join config in db.Configuration on configCata.ConfigId equals config.ConfigId
                   join cata in db.Catalogue on configCata.CatalogueId equals cata.CatalogueId
                   where configCata.IsActive == isActive
                   select new ConfigurationCatalogueDTO(configCata, config, cata);
         return(con.ToList());
     }
 }
 public static string UpdateCatalogue(CatalogueDTO catalogue)
 {
     using (DeverateContext context = new DeverateContext())
     {
         Catalogue cata = context.Catalogue.SingleOrDefault(c => c.CatalogueId == catalogue.CatalogueId);
         cata.Description = catalogue.Description;
         cata.Name        = catalogue.Name;
         cata.IsActive    = catalogue.IsActive;
         context.SaveChanges();
         return("UPdating catalogue success");
     }
 }
Ejemplo n.º 17
0
        public static string UpdateConfiguration(ConfigurationDTO configurationDTO)
        {
            using (DeverateContext db = new DeverateContext())
            {
                var result = from a in db.Account
                             where a.AccountId == configurationDTO.TestOwnerId
                             select a.CompanyId;
                int?companyId = result.First();
                var emps      = from a in db.Account
                                where a.CompanyId == companyId && a.IsActive == true && a.RoleId == 3
                                select new AccountDTO(a);
                if (emps.ToList().Count == 0)
                {
                    return("No available employee");
                }

                Configuration configuration = db.Configuration.SingleOrDefault(con => con.ConfigId == configurationDTO.ConfigId);
                configuration.ConfigId      = configurationDTO.ConfigId;
                configuration.TestOwnerId   = configurationDTO.TestOwnerId;
                configuration.TotalQuestion = configurationDTO.TotalQuestion;
                configuration.CreateDate    = DateTime.Now;
                configuration.StartDate     = configurationDTO.StartDate;
                configuration.EndDate       = configurationDTO.EndDate;
                configuration.Duration      = configurationDTO.Duration;
                configuration.IsActive      = true;
                db.Configuration.Update(configuration);
                db.SaveChanges();

                foreach (var item in configurationDTO.catalogueInConfigurations)
                {
                    CatalogueInConfiguration catalogueInConfiguration = db.CatalogueInConfiguration.SingleOrDefault(con => con.ConfigId == item.ConfigId);
                    catalogueInConfiguration.ConfigId    = configuration.ConfigId;
                    catalogueInConfiguration.CatalogueId = item.CatalogueId;
                    catalogueInConfiguration.WeightPoint = item.WeightPoint;
                    catalogueInConfiguration.IsActive    = item.IsActive;
                    db.CatalogueInConfiguration.Add(catalogueInConfiguration);
                    db.SaveChanges();
                }

                foreach (var item in configurationDTO.ConfigurationRank)
                {
                    ConfigurationRank configurationRank = new ConfigurationRank();
                    configurationRank.ConfigId    = configuration.ConfigId;
                    configurationRank.RankId      = item.RankId;
                    configurationRank.WeightPoint = item.WeightPoint;
                    configurationRank.IsActive    = item.IsActive;
                    db.ConfigurationRank.Add(configurationRank);
                    db.SaveChanges();
                }

                return(null);
            }
        }
 public static string removeCatalogue(List <CatalogueDTO> catalogue)
 {
     using (DeverateContext context = new DeverateContext())
     {
         foreach (var cata in catalogue)
         {
             Catalogue cataDb = context.Catalogue.SingleOrDefault(c => c.CatalogueId == cata.CatalogueId);
             cataDb.IsActive = false;
             context.SaveChanges();
         }
         return("Removing catalog success");
     }
 }
Ejemplo n.º 19
0
        /// <summary>
        /// Lấy list trọng số ứng với các catalogue có trong config
        /// </summary>
        /// <param name="db"></param>
        /// <param name="configId"></param>
        /// <returns></returns>
        public static List <CatalogueDTO> GetCatalogueWeights(DeverateContext db, int?configId)
        {
            var result = from cf in db.Configuration
                         join cif in db.CatalogueInConfiguration on cf.ConfigId equals cif.ConfigId
                         where cf.ConfigId == configId
                         select new CatalogueDTO(cif.CatalogueId, cif.Catalogue.Name, 0, cif.WeightPoint, null, cif.Catalogue.IsActive);

            if (result == null)
            {
                return(null);
            }
            return(result.ToList());
        }
Ejemplo n.º 20
0
 public static string removeQuestion(List <QuestionDTO> Question)
 {
     using (DeverateContext context = new DeverateContext())
     {
         foreach (var ques in Question)
         {
             Question questionDb = context.Question.SingleOrDefault(c => c.QuestionId == ques.QuestionId);
             questionDb.IsActive = false;
             context.SaveChanges();
         }
         return("Removing Question success");
     }
 }
 public static string CreateCatalogue(CatalogueDTO catalogue)
 {
     using (DeverateContext context = new DeverateContext())
     {
         Catalogue cata = new Catalogue();
         cata.Description = catalogue.Description;
         cata.Name        = catalogue.Name;
         cata.IsActive    = catalogue.IsActive;
         context.Catalogue.Add(cata);
         context.SaveChanges();
         return("Creating catalogue success");
     }
 }
Ejemplo n.º 22
0
 public static string UpdateCompany(CompanyDTO company)
 {
     using (DeverateContext db = new DeverateContext())
     {
         Company com = db.Company.SingleOrDefault(co => co.CompanyId == company.CompanyId);
         com.Name     = company.Name;
         com.Address  = company.Address;
         com.Fax      = company.Fax;
         com.Phone    = company.Phone;
         com.IsActive = company.IsActive;
         db.SaveChanges();
         return(null);
     }
 }
Ejemplo n.º 23
0
        /// <summary>
        /// Lấy câu hỏi của từng catalogue
        /// </summary>
        /// <param name="db"></param>
        /// <param name="catalogueId"></param>
        /// <returns></returns>
        public static List <QuestionDTO> GetQuestionOfCatalogue(DeverateContext db, int?catalogueId)
        {
            var ques = from ca in db.Catalogue
                       join q in db.Question on ca.CatalogueId equals q.CatalogueId
                       where ca.CatalogueId == catalogueId
                       select new QuestionDTO(q.QuestionId, q.Question1, null);
            List <QuestionDTO> questions = ques.ToList();

            for (int i = 0; i < questions.Count; i++)
            {
                questions[i].answers = GetAnswerOfQuestion(db, questions[i].questionId);
            }
            return(questions);
        }
Ejemplo n.º 24
0
        /// <summary>
        /// Lấy danh sách trọng số của từng catalogue đã cấu hình
        /// </summary>
        /// <param name="db"></param>
        /// <param name="testId"></param>
        /// <returns></returns>
        public static List <CatalogueWeightPointDTO> GetWeightPoints(DeverateContext db, int?testId)
        {
            var result = from t in db.Test
                         join cf in db.Configuration on t.ConfigId equals cf.ConfigId
                         join cif in db.CatalogueInConfiguration on cf.ConfigId equals cif.ConfigId
                         where t.TestId == testId
                         select new CatalogueWeightPointDTO(cif.CatalogueId, cif.WeightPoint);

            if (result == null)
            {
                return(null);
            }
            return(result.ToList());
        }
Ejemplo n.º 25
0
        /// <summary>
        /// Lấy danh sách điểm của từng rank được cấu hình
        /// </summary>
        /// <param name="db"></param>
        /// <param name="answer"></param>
        /// <returns></returns>
        public static List <ConfigurationRankDTO> GetRankPoint(DeverateContext db, TestAnswerDTO answer)
        {
            if (answer.testId == null)
            {
                return(null);
            }
            var result = from con in db.Configuration
                         join te in db.Test on con.ConfigId equals te.ConfigId
                         join cr in db.ConfigurationRank on con.ConfigId equals cr.ConfigId
                         where te.TestId == answer.testId
                         select new ConfigurationRankDTO(cr);

            return(result.ToList());
        }
Ejemplo n.º 26
0
 public static string UpdateQuestion(QuestionDTO ques)
 {
     using (DeverateContext context = new DeverateContext())
     {
         Question question = context.Question.SingleOrDefault(c => c.QuestionId == ques.QuestionId);
         question.CatalogueId = ques.CatalogueId;
         question.Question1   = ques.Question1;
         question.IsActive    = ques.IsActive;
         question.MaxPoint    = ques.MaxPoint;
         //question.CreateBy = ques.CreateBy;
         //question.Answer = ques.Answer;
         //context.SaveChanges();
         return("UPdating Question success");
     }
 }
Ejemplo n.º 27
0
        public static List <CatalogueDTO> GetNumberOfQuestionEachCatalogue(DeverateContext db, int?totalQuestion, List <CatalogueDTO> catalogues)
        {
            int currentQuestion = 0;

            for (int i = 0; i < catalogues.Count; i++)
            {
                double numberOfQuestion = catalogues[i].weightPoint.Value * totalQuestion.Value;
                catalogues[i].numberOfQuestion = Convert.ToInt32(numberOfQuestion);
                currentQuestion += catalogues[i].numberOfQuestion.Value;
            }
            int dif = currentQuestion - totalQuestion.Value;

            catalogues[catalogues.Count - 1].numberOfQuestion = catalogues[catalogues.Count - 1].numberOfQuestion.Value - dif;
            return(catalogues);
        }
Ejemplo n.º 28
0
 public static string CreateQuestion(QuestionDTO ques)
 {
     using (DeverateContext context = new DeverateContext())
     {
         Question question = new Question();
         question.CatalogueId = ques.CatalogueId;
         question.Question1   = ques.Question1;
         question.IsActive    = ques.IsActive;
         question.MaxPoint    = ques.MaxPoint;
         question.CreateBy    = ques.CreateBy;
         question.Answer      = ques.Answer;
         context.Question.Add(question);
         context.SaveChanges();
         return("Creating Question success");
     }
 }
Ejemplo n.º 29
0
 public static string DisableCompany(List <CompanyDTO> company)
 {
     using (DeverateContext db = new DeverateContext())
     {
         Company com;
         foreach (var item in company)
         {
             com          = db.Company.SingleOrDefault(co => co.CompanyId == item.CompanyId);
             com.Name     = item.Name;
             com.Address  = item.Address;
             com.IsActive = item.IsActive;
         }
         db.SaveChanges();
         return(null);
     }
 }
Ejemplo n.º 30
0
 public static Company CreateCompany(CompanyDataDTO companyData)
 {
     using (DeverateContext db = new DeverateContext())
     {
         Company com = new Company();
         com.Address  = companyData.CompanyDTO.Address;
         com.Name     = companyData.CompanyDTO.Name;
         com.CreateAt = DateTime.Now;
         com.Fax      = companyData.CompanyDTO.Fax;
         com.Phone    = companyData.CompanyDTO.Phone;
         com.IsActive = companyData.CompanyDTO.IsActive;
         var result = db.Company.Add(com);
         db.SaveChanges();
         return(result.Entity);
     }
 }