Exemplo n.º 1
0
 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));
     }
 }
Exemplo n.º 2
0
        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));
            }
        }