예제 #1
0
        public ActionResult MoneyToPoint(double sotien)
        {
            if (Session["IdUser"] == null && Session["EmailUser"] == null)
            {
                return(RedirectToAction("LoginForm", "Login"));
            }
            int id      = (int)Session["IdUser"];
            var account = db.BDSAccounts.First(T => T.ID == id);

            if (account.Money.Value >= sotien)
            {
                var P       = 0.0;
                var setting = db.Settings.FirstOrDefault(T => T.Name == "MoneyToPoint");
                if (setting == null)
                {
                    P = sotien;
                }
                else
                {
                    P = Math.Ceiling(sotien / 1000 * double.Parse(setting.Value));
                }

                String Fname = "Đổi '{A}' VND thành '{B}' điểm";
                string name  = Fname.Replace("{A}", sotien.ToString("n2")).Replace("{B}", P.ToString("n2"));
                BDSTransactionHistory tran = new BDSTransactionHistory()
                {
                    Name        = name,
                    Description = name,
                    KeySearch   = name.NormalizeD(),
                    Active      = 1,
                    CreateUser  = 1,
                    CreateDate  = DateTime.Now,
                    TypeTran    = 2,
                    PointTran   = (int)P,
                    MoneyTran   = sotien,
                    DateTran    = DateTime.Now,
                    Status      = 1,
                    IdAccount   = int.Parse(Session["IdUser"].ToString())
                };
                db.BDSTransactionHistories.Add(tran);
                account.Money           = account.Money - sotien;
                account.Point           = account.Point + (int)P;
                db.Entry(account).State = EntityState.Modified;
                db.SaveChanges();
                ViewBag.Error = false;
                return(RedirectToAction("ManagementAcountEmployee"));
            }
            else
            {
                ViewBag.Error = true;
            }

            return(View());
        }
        public ActionResult AdvertCompany(RegisterInformationModel create, HttpPostedFileBase[] files)
        {
            create.Status = false;
            if (Session["Captcha"] == null || Session["Captcha"].ToString() != create.tblCaptCha.Captcha)
            {
                ModelState.AddModelError("Captcha", "Wrong value of sum, please try again.");
                create.Msg = "Capcha không chính xác!";
                var dataCity = (from data in db.States
                                join datatext in db.StateTexts on data.name_id equals datatext.id
                                where datatext.language_id == "vi" && data.state_id != 59 && data.state_id != 28
                                select new GeoModel {
                    CityId = data.state_id, CityName = datatext.text
                }).ToList();

                dataCity.Insert(0, new GeoModel {
                    CityId = 0, CityName = "Chọn thành/phố"
                });
                dataCity.Insert(1, new GeoModel {
                    CityId = 59, CityName = "TP.Hồ Chí Minh"
                });
                dataCity.Insert(2, new GeoModel {
                    CityId = 28, CityName = "TP.Hà Nội"
                });
                CaptCha cap           = new CaptCha();
                var     registerModel = new RegisterInformationModel
                {
                    ListBDSScopes   = db.BDSScopes.Where(T => T.Active == 1).ToList(),
                    ListMarriea     = db.BDSMarriages.Where(T => T.Active == 1).ToList(),
                    ListSalary      = db.BDSSalaries.Where(T => T.Active == 1).ToList(),
                    ListDucation    = db.BDSEducations.Where(T => T.Active == 1).ToList(),
                    ListBDSCareer   = db.BDSCareers.Where(T => T.Active == 1).ToList(),
                    ListTimework    = db.BDSTimeWorks.Where(T => T.Active == 1).OrderBy(x => x.Type).ToList(),
                    ListBDSLanguage = db.BDSLanguages.Where(T => T.Active == 1).ToList(),
                    ListBDSNewsType = db.BDSNewsTypes.Where(T => T.Active == 1).OrderBy(x => x.Order).ToList(),
                    ListGeoModel    = dataCity.ToList(),
                    tblCaptCha      = cap,
                    Msg             = "Capcha không chính xác!",
                    Status          = false
                };
                return(Json(registerModel));
            }
            else
            {
                var checkMoney = false;
                if (Session["IdUser"] != null)
                {
                    int id    = int.Parse(Session["IdUser"].ToString());
                    var model = db.BDSAccounts.FirstOrDefault(T => T.ID == id);
                    if (model != null)
                    {
                        if (model.Money >= create.tblBDSNew.TotalMoney)
                        {
                            checkMoney = true;
                        }
                    }
                }

                if (!checkMoney)
                {
                    create.Msg = "Số tiền trong tài khoản không đủ!";
                    ModelState.AddModelError("TotalMoney", "Số tiền trong tài khoản không đủ!");
                    var dataCity = (from data in db.States
                                    join datatext in db.StateTexts on data.name_id equals datatext.id
                                    where datatext.language_id == "vi" && data.state_id != 59 && data.state_id != 28
                                    select new GeoModel {
                        CityId = data.state_id, CityName = datatext.text
                    }).ToList();

                    dataCity.Insert(0, new GeoModel {
                        CityId = 0, CityName = "Chọn thành/phố"
                    });
                    dataCity.Insert(1, new GeoModel {
                        CityId = 59, CityName = "TP.Hồ Chí Minh"
                    });
                    dataCity.Insert(2, new GeoModel {
                        CityId = 28, CityName = "TP.Hà Nội"
                    });
                    CaptCha cap = new CaptCha();

                    var registerModel = new RegisterInformationModel
                    {
                        ListBDSScopes   = db.BDSScopes.Where(T => T.Active == 1).ToList(),
                        ListMarriea     = db.BDSMarriages.Where(T => T.Active == 1).ToList(),
                        ListSalary      = db.BDSSalaries.Where(T => T.Active == 1).ToList(),
                        ListDucation    = db.BDSEducations.Where(T => T.Active == 1).ToList(),
                        ListBDSCareer   = db.BDSCareers.Where(T => T.Active == 1).ToList(),
                        ListTimework    = db.BDSTimeWorks.Where(T => T.Active == 1).OrderBy(x => x.Type).ToList(),
                        ListBDSLanguage = db.BDSLanguages.Where(T => T.Active == 1).ToList(),
                        ListBDSNewsType = db.BDSNewsTypes.Where(T => T.Active == 1).OrderBy(x => x.Order).ToList(),
                        ListGeoModel    = dataCity.ToList(),
                        tblCaptCha      = cap,
                    };
                    return(Json(registerModel));
                }
                create.tblBDSNew.IdAcount     = int.Parse(Session["IdUser"].ToString());
                create.tblBDSNew.FromDeadline = DateTime.Now;
                create.tblBDSNew.CreateDate   = DateTime.Now;
                create.tblBDSNew.Active       = 1;
                create.tblBDSNew.Status       = 0;
                create.tblBDSNew.CountReup    = 0;
                create.tblBDSNew.MaxReup      = 0;
                create.tblBDSNew.CreateUser   = 1;
                create.tblBDSNew.ShowEmail    = 0;

                create.tblBDSNew.Career            = create.tblBDSNew.Career.Substring(create.tblBDSNew.Career.Length - 1) == "," ? create.tblBDSNew.Career.Substring(0, create.tblBDSNew.Career.Length - 1) : create.tblBDSNew.Career;
                create.tblBDSNew.IdTypeNewsCuurent = create.tblBDSNew.IdTypeNews;
                db.Entry(create.tblBDSNew).State   = EntityState.Added;
                db.SaveChanges();
                if (files != null && files.Length > 0)
                {
                    for (int i = 0; i < files.Length; i++)
                    {
                        if (files[i] != null)
                        {
                            byte[] binaryData;
                            binaryData = new Byte[files[i].InputStream.Length];
                            long bytesRead = files[i].InputStream.Read(binaryData, 0, (int)files[i].InputStream.Length);
                            files[i].InputStream.Close();
                            string base64String = System.Convert.ToBase64String(binaryData, 0, binaryData.Length);
                            SaveImg(new NewsPicture {
                                nameImg = files[i].FileName, idProducts = create.tblBDSNew.ID, isactive = 1, index = i, cfile = base64String
                            });
                        }
                    }
                }



                foreach (var item in create.tblBDSNew.Career.Split(','))
                {
                    if (!String.IsNullOrEmpty(item))
                    {
                        BDSNews_Career i = new BDSNews_Career {
                            ID_News = create.tblBDSNew.ID, ID_Career = int.Parse(item)
                        };
                        db.Entry(i).State = EntityState.Added;
                    }
                }
                db.SaveChanges();

                var    type  = db.BDSNewsTypes.First(T => T.ID == create.tblBDSNew.IdTypeNewsCuurent.Value);
                String Fname = "Đăng tin '{A}' trong vòng '{B}' ngày tổng giá phải trả '{C}' VNĐ";
                string name  = Fname.Replace("{A}", type.Name).Replace("{B}", ((int)Math.Ceiling(create.tblBDSNew.ToCreateNews.Value.Subtract(create.tblBDSNew.FromCreateNews.Value).TotalDays)) + "").Replace("{C}", create.tblBDSNew.TotalMoney.Value.ToString("n2"));
                BDSTransactionHistory tran = new BDSTransactionHistory()
                {
                    Name        = name,
                    Description = name,
                    KeySearch   = name.NormalizeD(),
                    Active      = 1,
                    CreateUser  = 1,
                    CreateDate  = DateTime.Now,
                    TypeTran    = 2,
                    PointTran   = 0,
                    MoneyTran   = create.tblBDSNew.TotalMoney.Value,
                    DateTran    = DateTime.Now,
                    Status      = 0,
                    IdAccount   = int.Parse(Session["IdUser"].ToString())
                };
                create.tblBDSNew = db.BDSNews.First(T => T.ID == create.tblBDSNew.ID);
                db.BDSTransactionHistories.Add(tran);
                db.SaveChanges();
                create.tblBDSNew.RefTranHis      = tran.ID;
                db.Entry(create.tblBDSNew).State = EntityState.Modified;
                db.SaveChanges();
                var account = db.BDSAccounts.First(T => T.ID == create.tblBDSNew.IdAcount);
                account.Money          -= create.tblBDSNew.TotalMoney;
                db.Entry(account).State = EntityState.Modified;
                db.SaveChanges();



                create.Msg    = "Đăng tin thành công!";
                create.Status = true;
                return(Json(create));
            }
            return(null);
        }
예제 #3
0
        public ActionResult DetailPersonal(int id)
        {
            var idAcount       = int.Parse(Session["IdUser"].ToString());
            var namePeson      = db.BDSPersonalInformations.Find(id);
            var point          = db.BDSAccounts.FirstOrDefault(x => x.ID == idAcount).Point;
            var stMoneyToPoint = db.Settings.Where(T => T.Name == "PointViewPer").FirstOrDefault();
            int p = 3;

            if (stMoneyToPoint != null)
            {
                int.TryParse(stMoneyToPoint.Value, out p);
            }
            if (db.BDSEmpers.Where(T => T.IdAccountPer == id && T.IdAccountEm == idAcount).Count() > 0)
            {
                return(Json(new { result = 1, name = namePeson.Name.UrlFrendly() + "-" + id }));
            }
            if (point > p)
            {
                var tblBDSAccounts = db.BDSAccounts.Find(idAcount);
                point = point - p;
                tblBDSAccounts.Point           = point;
                db.Entry(tblBDSAccounts).State = EntityState.Modified;
                db.SaveChanges();
                var tblBDSEmpers = new BDSEmper();

                tblBDSEmpers.IdAccountEm     = idAcount;
                tblBDSEmpers.IdAccountPer    = id;
                tblBDSEmpers.Active          = 1;
                tblBDSEmpers.CreateDate      = DateTime.Now;
                tblBDSEmpers.ModifiedDate    = DateTime.Now;
                tblBDSEmpers.CreateUser      = 1;
                tblBDSEmpers.ModifiedUser    = 1;
                db.Entry(tblBDSEmpers).State = EntityState.Added;
                db.SaveChanges();


                String Fname = "Xem tin tìm việc {A}  tốn {B} điểm";
                string name  = Fname.Replace("{A}", namePeson.Name.UrlFrendly() + "-" + id).Replace("{B}", "3");
                BDSTransactionHistory tran = new BDSTransactionHistory()
                {
                    Name        = name,
                    Description = name,
                    KeySearch   = name.NormalizeD(),
                    Active      = 1,
                    CreateUser  = 1,
                    CreateDate  = DateTime.Now,
                    TypeTran    = 2,
                    PointTran   = p,
                    MoneyTran   = 0,
                    DateTran    = DateTime.Now,
                    Status      = 1,
                    IdAccount   = int.Parse(Session["IdUser"].ToString())
                };
                db.Entry(tran).State = EntityState.Added;
                db.SaveChanges();
                tblBDSEmpers.RefTranHis      = tran.ID;
                db.Entry(tblBDSEmpers).State = EntityState.Modified;
                db.SaveChanges();

                return(Json(new { result = 1, name = namePeson.Name.UrlFrendly() + "-" + id }));
            }
            else
            {
                return(Json(new { result = 0 }));
            }
        }
예제 #4
0
        public JsonResult SaveYourArchive(int?id)
        {
            if (Session["IdUser"] == null && Session["EmailUser"] == null)
            {
                return(Json(new { Status = false, Message = "Vui lòng đăng nhập tài khoản nhà tuyển dụng!" }));;
            }
            var idAcount = int.Parse(Session["IdUser"].ToString());
            var emp      = db.BDSEmployerInformations.FirstOrDefault(T => T.IdAccount == idAcount);

            if (emp == null)
            {
                return(Json(new { Status = false, Message = "Vui lòng đăng nhập tài khoản nhà tuyển dụng!" }));;
            }

            if (db.BDSEmpers.Where(T => T.IdAccountEm == emp.ID && T.IdAccountPer == id && T.Active == 1).Count() > 0)
            {
                return(Json(new { Status = false, Message = "Hồ sơ đã được lưu!" }));;
            }


            var stMoneyToPoint = db.Settings.Where(T => T.Name == "PointViewPer").FirstOrDefault();
            int p = 3;

            if (stMoneyToPoint != null)
            {
                int.TryParse(stMoneyToPoint.Value, out p);
            }
            BDSEmper em = new BDSEmper();

            em.Active       = 1;
            em.CreateDate   = DateTime.Now;
            em.CreateUser   = 1;
            em.Name         = "Lưu hồ sơ PER" + id.Value.ToString("000000") + "";
            em.IdAccountEm  = emp.ID;
            em.IdAccountPer = id.Value;
            em.Description  = em.Name;

            em.KeySearch = "";
            em.Point     = p;
            var account = db.BDSAccounts.FirstOrDefault(T => T.ID == idAcount);

            if (account.Point < em.Point)
            {
                return(Json(new { Status = false, Message = "Tài khoản không đủ điểm!" }));
            }

            String Fname = "Lưu hồ sơ '{A}' điểm phải trả {B}";
            string name  = Fname.Replace("{A}", "PER" + id.Value.ToString("000000") + "").Replace("{B}", em.Point.ToString());
            BDSTransactionHistory tranhist = new BDSTransactionHistory
            {
                Name        = name,
                Description = name,
                KeySearch   = name.NormalizeD(),
                Active      = 1,
                CreateUser  = 1,
                CreateDate  = DateTime.Now,
                TypeTran    = 2,
                PointTran   = em.Point.Value,
                MoneyTran   = 0,
                DateTran    = DateTime.Now,
                Status      = 1,
                IdAccount   = int.Parse(Session["IdUser"].ToString())
            };

            db.Entry(tranhist).State = EntityState.Added;

            db.SaveChanges();

            em.RefTranHis = tranhist.ID;

            db.BDSEmpers.Add(em);

            account.Point           = account.Point - em.Point;
            db.Entry(account).State = EntityState.Modified;
            db.SaveChanges();
            return(Json(new { Status = true, Message = "Lưu hồ sơ thành công!" }));
        }