Ejemplo n.º 1
0
        public long UpdateSender(tblSender sender)
        {
            long result = 0;

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    var _temp = db.tblSenders.FirstOrDefault(x => x.Id == sender.Id);
                    if (_temp != null)
                    {
                        db.Entry(_temp).CurrentValues.SetValues(sender);
                        if (db.SaveChanges() > 0)
                        {
                            result = _temp.Id;
                        }
                    }
                    result = sender.Id;
                }
            }
            catch (Exception ex)
            {
                SELog.WriteLog("StoreServices => UpdateSender", ex);
            }
            return(result);
        }
Ejemplo n.º 2
0
        public JsonResult UpdateSender(tblSender model)
        {
            var result = new Models.CustomJsonResult();

            try
            {
                if (model.Id > 0)
                {
                    result.Result = _storeService.UpdateSender(model);
                    if (int.Parse(result.Result.ToString()) > 0)
                    {
                        result.Message = "Update sender successly";
                    }
                }
                else
                {
                    result.Result = _storeService.InsertSender(model);
                    if (int.Parse(result.Result.ToString()) > 0)
                    {
                        result.Message = "Create new sender successly";
                    }
                }
                if (int.Parse(result.Result.ToString()) < 1)
                {
                    result.Message = "Has error, please try again!";
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
            }
            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
        public long UpdateSender(tblSender sender)
        {
            long result = 0;

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    var _temp = db.tblSenders.Where(x => x.Id == sender.Id).FirstOrDefault();
                    if (_temp != null)
                    {
                        db.Entry(_temp).CurrentValues.SetValues(sender);
                        if (db.SaveChanges() > 0)
                        {
                            result = _temp.Id;
                        }
                    }
                    result = sender.Id;
                }
            }
            catch (Exception ex)
            {
                string e = ex.Message;
            }
            return(result);
        }
Ejemplo n.º 4
0
        public ActionResult SenderManager(int id = -1)
        {
            if (Session[Constant.SessionStoreID] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }
            ViewBag.StoreID = Session[Constant.SessionStoreID];
            tblSender sender = new tblSender();

            sender = _storeService.SelectSenderByID(id);
            return(View(sender));
        }
Ejemplo n.º 5
0
        public ActionResult CreateSender(int id = -1)
        {
            bool IsHadStore = true;

            if (Session[Constant.SessionStoreID] == null)
            {
                IsHadStore = false;
            }
            ViewBag.StoreID = Session[Constant.SessionStoreID];
            tblSender sender = new tblSender();

            sender           = _storeService.SelectSenderByID(id);
            ViewBag.HadStore = IsHadStore;
            return(View(sender));
        }
Ejemplo n.º 6
0
        public tblSender SelectSenderByID(int id)
        {
            tblSender _item = new tblSender();

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    _item = db.tblSenders.Where(x => x.Id == id).FirstOrDefault();
                }
            }
            catch (Exception ex)
            {
                string e = ex.Message;
            }
            return(_item);
        }
Ejemplo n.º 7
0
        public tblSender SelectSenderByID(int id)
        {
            tblSender _item = new tblSender();

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    _item = db.tblSenders.FirstOrDefault(x => x.Id == id);
                }
            }
            catch (Exception ex)
            {
                SELog.WriteLog("StoreServices => SelectSenderByID", ex);
            }
            return(_item);
        }
Ejemplo n.º 8
0
        public long InsertSender(tblSender sender)
        {
            long result = 0;

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    db.tblSenders.Add(sender);
                    db.SaveChanges();
                    result = sender.Id;
                }
            }
            catch (Exception ex)
            {
                string e = ex.Message;
            }
            return(result);
        }
Ejemplo n.º 9
0
        public long InsertSender(tblSender sender)
        {
            long result = 0;

            try
            {
                sender.CreateDate = DateTime.Now.ToFileTimeUtc();
                using (var db = ContextFactory.UsTransportEntities())
                {
                    db.tblSenders.Add(sender);
                    db.SaveChanges();
                    result = sender.Id;
                }
            }
            catch (Exception ex)
            {
                SELog.WriteLog("StoreServices => InsertSender", ex);
            }
            return(result);
        }
Ejemplo n.º 10
0
        public long Admin_CreateOrder(tblOrder model)
        {
            long result = 0;

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    using (DbContextTransaction transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            // check phone sender
                            tblSender s = db.tblSenders.FirstOrDefault(x => x.Phone == model.SenderShippingInfo.Phone && x.StoreId == model.StoreId);
                            if (s == null)
                            {
                                s = new tblSender
                                {
                                    Phone    = model.SenderShippingInfo.Phone,
                                    Add1     = model.SenderShippingInfo.AddressLine1,
                                    Add2     = model.SenderShippingInfo.AddressLine2,
                                    CityId   = model.SenderShippingInfo.CityId,
                                    FullName = model.SenderShippingInfo.FullName,
                                    StoreId  = model.StoreId
                                };
                                db.tblSenders.Add(s);
                                db.SaveChanges();
                            }
                            model.SenderId = s.Id;

                            tblRecipientsInfo r = db.tblRecipientsInfoes.FirstOrDefault(x => x.Phone == model.RecipientShippingInfo.Phone && x.StoreId == model.StoreId);
                            if (r == null)
                            {
                                r = new tblRecipientsInfo
                                {
                                    Phone      = model.RecipientShippingInfo.Phone,
                                    Add1       = model.RecipientShippingInfo.AddressLine1,
                                    Add2       = model.RecipientShippingInfo.AddressLine2,
                                    CityId     = model.RecipientShippingInfo.CityId,
                                    DistrictId = model.RecipientShippingInfo.DistrictId,
                                    FullName   = model.RecipientShippingInfo.FullName,
                                    StoreId    = model.StoreId
                                };
                                db.tblRecipientsInfoes.Add(r);
                                db.SaveChanges();
                            }
                            model.RecipientId = r.id;
                            db.tblOrders.Add(model);
                            db.SaveChanges();

                            model.RecipientShippingInfo.OrderId  = model.id;
                            model.RecipientShippingInfo.TypeUser = (int)OrderUserInfo.Recipient;
                            db.tblShippingInfoes.Add(model.RecipientShippingInfo);
                            db.SaveChanges();
                            model.SenderShippingInfo.OrderId  = model.id;
                            model.SenderShippingInfo.TypeUser = (int)OrderUserInfo.Sender;
                            db.tblShippingInfoes.Add(model.SenderShippingInfo);
                            db.SaveChanges();
                            transaction.Commit();
                            result = model.id;
                        }
                        catch (Exception ex)
                        {
                            transaction.Rollback();
                        }
                    }
                }
            }
            catch (Exception)
            {
            }
            return(result);
        }
Ejemplo n.º 11
0
        public long Admin_UpdateOrder(tblOrder model)
        {
            long result = 0;

            try
            {
                using (var db = ContextFactory.UsTransportEntities())
                {
                    using (DbContextTransaction transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            #region check phone sender, recipient
                            // check phone sender
                            tblSender sender = db.tblSenders.FirstOrDefault(x => x.Phone == model.SenderShippingInfo.Phone && x.StoreId == model.StoreId);
                            if (sender == null)
                            {
                                sender = new tblSender
                                {
                                    Phone    = model.SenderShippingInfo.Phone,
                                    Add1     = model.SenderShippingInfo.AddressLine1,
                                    Add2     = model.SenderShippingInfo.AddressLine2,
                                    CityId   = model.SenderShippingInfo.CityId,
                                    FullName = model.SenderShippingInfo.FullName,
                                    StoreId  = model.StoreId
                                };
                                db.tblSenders.Add(sender);
                                db.SaveChanges();
                            }
                            model.SenderId = sender.Id;

                            tblRecipientsInfo reciver = db.tblRecipientsInfoes.FirstOrDefault(x => x.Phone == model.RecipientShippingInfo.Phone && x.StoreId == model.StoreId);
                            if (reciver == null)
                            {
                                reciver = new tblRecipientsInfo
                                {
                                    Phone      = model.RecipientShippingInfo.Phone,
                                    Add1       = model.RecipientShippingInfo.AddressLine1,
                                    Add2       = model.RecipientShippingInfo.AddressLine2,
                                    CityId     = model.RecipientShippingInfo.CityId,
                                    DistrictId = model.RecipientShippingInfo.DistrictId,
                                    FullName   = model.RecipientShippingInfo.FullName,
                                    StoreId    = model.StoreId
                                };
                                db.tblRecipientsInfoes.Add(reciver);
                                db.SaveChanges();
                            }
                            model.RecipientId = reciver.id;
                            #endregion

                            var order = db.tblOrders.Where(x => x.id == model.id).First();
                            db.Entry(order).CurrentValues.SetValues(model);
                            db.SaveChanges();

                            #region update shipping info
                            tblShippingInfo s = db.tblShippingInfoes.FirstOrDefault(x => x.OrderId == model.id && x.TypeUser == (int)OrderUserInfo.Sender);
                            model.SenderShippingInfo.OrderId  = model.id;
                            model.SenderShippingInfo.TypeUser = (int)OrderUserInfo.Sender;
                            if (s != null)
                            {
                                db.Entry(s).CurrentValues.SetValues(model.SenderShippingInfo);
                            }
                            else
                            {
                                db.tblShippingInfoes.Add(model.SenderShippingInfo);
                            }
                            db.SaveChanges();

                            tblShippingInfo r = db.tblShippingInfoes.FirstOrDefault(x => x.OrderId == model.id && x.TypeUser == (int)OrderUserInfo.Recipient);
                            model.RecipientShippingInfo.OrderId  = model.id;
                            model.RecipientShippingInfo.TypeUser = (int)OrderUserInfo.Recipient;
                            if (r != null)
                            {
                                db.Entry(r).CurrentValues.SetValues(model.RecipientShippingInfo);
                            }
                            else
                            {
                                db.tblShippingInfoes.Add(model.RecipientShippingInfo);
                            }
                            db.SaveChanges();
                            #endregion

                            #region update/ delete package

                            var tblOldPackage = db.tblPackageInfoes.Where(x => x.OrderId == model.id).Include(y => y.tblItemInPackages).ToList();
                            if (tblOldPackage != null && tblOldPackage.Any())
                            {
                                foreach (var op in tblOldPackage.ToList())
                                {
                                    var opDelete = model.tblPackageInfoes.FirstOrDefault(x => x.id == op.id);
                                    if (opDelete == null)
                                    {
                                        db.tblItemInPackages.RemoveRange(op.tblItemInPackages);
                                        db.SaveChanges();
                                        db.tblPackageInfoes.Remove(op);
                                        db.SaveChanges();
                                    }
                                }
                            }

                            foreach (var pa in model.tblPackageInfoes)
                            {
                                var pM = db.tblPackageInfoes.Include(x => x.tblItemInPackages).FirstOrDefault(x => x.id == pa.id);
                                if (pM != null)
                                {
                                    pM.Depth      = pa.Depth;
                                    pM.Fee        = pa.Fee;
                                    pM.Height     = pa.Height;
                                    pM.Ordinal    = pa.Ordinal;
                                    pM.TotalItem  = pa.TotalItem;
                                    pM.TotalValue = pa.TotalValue;
                                    pM.Weight     = pa.Weight;
                                    pM.Width      = pa.Width;

                                    foreach (var it in pM.tblItemInPackages.ToList())
                                    {
                                        var itDelete = pa.tblItemInPackages.FirstOrDefault(x => x.id == it.id);
                                        if (itDelete == null)
                                        {
                                            db.tblItemInPackages.Remove(it);
                                            db.SaveChanges();
                                        }
                                    }
                                }
                                else
                                {
                                    pa.OrderId = model.id;
                                    db.tblPackageInfoes.Add(pa);
                                }
                                db.SaveChanges();
                                foreach (var i in pa.tblItemInPackages)
                                {
                                    var iM = db.tblItemInPackages.FirstOrDefault(x => x.id == i.id);
                                    if (iM != null)
                                    {
                                        i.PackageId = pa.id;
                                        db.Entry(iM).CurrentValues.SetValues(i);
                                    }
                                    else
                                    {
                                        i.PackageId = pa.id;
                                        db.tblItemInPackages.Add(i);
                                    }
                                    db.SaveChanges();
                                }
                            }
                            #endregion

                            //db.SaveChanges();
                            transaction.Commit();
                            result = model.id;
                        }
                        catch (Exception ex)
                        {
                            transaction.Rollback();
                            throw ex;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
            }
            return(result);
        }
Ejemplo n.º 12
0
        public ActionResult UpdateShippingInfo(ShippingInfoModel model)
        {
            /// -2: có lỗi xảy ra
            /// -1: đã tồn tại số phone, không update
            /// 0: insert bị lỗi
            /// > 0: insert thành công.
            var result = new CustomJsonResult()
            {
                Result = -2
            };

            try
            {
                /// check user info by store
                if (model.StoreId == 0)
                {
                    var storeInfo = GetStoreAccountInfo();
                    if (storeInfo != null && storeInfo.id > 0)
                    {
                        model.StoreId = storeInfo.id;
                    }
                }
                if (model.StoreId > 0)
                {
                    bool hasExists = _storeService.Admin_CheckPhoneUserInfoOfStore(model.StoreId, model.TypeUser, model.Phone);
                    // init
                    tblSender         _s = new tblSender();
                    tblRecipientsInfo _r = new tblRecipientsInfo();

                    switch ((OrderUserInfo)model.TypeUser)
                    {
                    case OrderUserInfo.Recipient:
                        _r = new tblRecipientsInfo
                        {
                            Phone      = model.Phone,
                            Add1       = model.AddressLine1,
                            Add2       = model.AddressLine2,
                            CityId     = model.CityId,
                            DistrictId = model.DistrictId,
                            FullName   = model.FullName,
                            StoreId    = model.StoreId,
                            WardId     = model.WardId
                        };
                        break;

                    default:
                    case OrderUserInfo.Sender:
                        _s = new tblSender
                        {
                            Phone    = model.Phone,
                            Add1     = model.AddressLine1,
                            Add2     = model.AddressLine2,
                            CityId   = model.CityId,
                            FullName = model.FullName,
                            StoreId  = model.StoreId,
                            StateId  = model.StateId,
                            Zip      = model.Zip,
                            Email    = model.Email
                        };
                        break;
                    }
                    if (!hasExists)
                    {
                        switch ((OrderUserInfo)model.TypeUser)
                        {
                        case OrderUserInfo.Recipient:
                            result.Result = _storeService.InsertReciever(_r);
                            break;

                        case OrderUserInfo.Sender:
                            result.Result = _storeService.InsertSender(_s);
                            break;
                        }
                    }
                    else
                    {
                        switch ((OrderUserInfo)model.TypeUser)
                        {
                        case OrderUserInfo.Recipient:
                            _r.id         = model.Id;
                            result.Result = _storeService.UpdateReciever(_r);
                            break;

                        case OrderUserInfo.Sender:
                            _s.Id         = model.Id;
                            result.Result = _storeService.UpdateSender(_s);
                            break;
                        }
                        //result.Result = -1;
                    }
                }
                else
                {
                    result.Message = "You dont have store info!";
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
                Libraries.Log.Write(ex.Message);
            }
            return(Json(result));
        }