public IHttpActionResult HuyVeXe(string _vexeId) { try { using (var db = new DB()) { VeXe veXe = db.VeXes.FirstOrDefault(x => x.vexeId == _vexeId); if (veXe.matrangthaive == 0) { veXe.matrangthaive = 3; } string machuyenxe = veXe.machuyenxe; IEnumerable <ChiTietVeXe> list = db.ChiTietVeXes.Where <ChiTietVeXe>(p => p.vexeId == veXe.vexeId); List <string> maghes = new List <string>(); foreach (ChiTietVeXe ct in list) { Database.TrangThaiGhe trangthaighe = db.TrangThaiGhes.SingleOrDefault(p => (p.maghe == ct.maghe) && (p.machuyenxe == machuyenxe)); trangthaighe.trangthai = 0; } db.SaveChanges(); return(Ok()); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Post([FromBody] DatXe datXe) { try { using (var db = new DB()) { using (var transaction = db.Database.BeginTransaction()) { DateTime dateTimeNow = DateTime.Now; KhachHang khachHang = db.KhachHangs.FirstOrDefault(x => x.sodienthoai == datXe.khachhang.sodienthoai); string khachhangid = DataHelper.RandomString(20); if (khachHang != null) { khachHang.hoten = datXe.khachhang.hoten; khachHang.email = datXe.khachhang.email; khachHang.gioitinh = datXe.khachhang.gioitinh; khachHang.diachi = datXe.khachhang.diachi; khachhangid = khachHang.khachhangId; } else { datXe.khachhang.madoituong = "DTDEFAULT"; datXe.khachhang.diemtichluy = 0; while (db.KhachHangs.FirstOrDefault(x => x.khachhangId == khachhangid) != null) { khachhangid = DataHelper.RandomString(20); } datXe.khachhang.khachhangId = khachhangid; datXe.khachhang.matkhau = Encode.MD5(datXe.khachhang.sodienthoai); db.KhachHangs.Add(datXe.khachhang); } db.SaveChanges(); string vexeid = DataHelper.RandomString(20); while (db.VeXes.FirstOrDefault(x => x.vexeId == vexeid) != null) { vexeid = DataHelper.RandomString(20); } VeXe veXe = new VeXe() { vexeId = vexeid, machuyenxe = datXe.machuyenxe, khachhangId = khachhangid, matrangthaive = 0, sokhach = datXe.ghes.Count, madiemtrungchuyendon = datXe.madiemtrungchuyendon, madiemtrungchuyentra = datXe.madiemtrungchuyentra, ngaydat = dateTimeNow, tongtien = datXe.tongtien.ToString() }; db.VeXes.Add(veXe); db.SaveChanges(); string maxe = db.ChuyenXes.FirstOrDefault(x => x.machuyenxe == datXe.machuyenxe).maxe; datXe.ghes.ForEach(x => { Database.TrangThaiGhe trangThaiGhe = db.TrangThaiGhes.FirstOrDefault(y => (y.maghe == maxe + "_" + x) && y.machuyenxe == datXe.machuyenxe); if (trangThaiGhe != null) { trangThaiGhe.trangthai = 1; } string chitietvexeid = DataHelper.RandomString(20); while (db.ChiTietVeXes.FirstOrDefault(y => y.chitietvexeId == chitietvexeid) != null) { chitietvexeid = DataHelper.RandomString(20); } db.ChiTietVeXes.Add(new ChiTietVeXe() { chitietvexeId = chitietvexeid, vexeId = veXe.vexeId, tenhanhkhach = datXe.khachhang.hoten, sodienthoaikhach = datXe.khachhang.sodienthoai, maghe = maxe + "_" + x, doituong = "DTDEFAULT" }); }); db.SaveChanges(); transaction.Commit(); return(Ok()); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }