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); }
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 })); } }
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!" })); }