示例#1
0
        public async Task <ActionResult> Create([Bind(Include = "CustomerId, WarehouseCode, Description, Address1, Address2")] WarehouseViewModel obj)
        {
            //obj.Domain = CookieHelper.Domain;
            obj.CreatedBy = CookieHelper.EmailAddress;


            var url      = "api/warehouse/add";
            var response = await HttpClientHelper.ApiCall(url, Method.POST, obj);

            if (response.StatusCode == HttpStatusCode.Forbidden)
            {
                TempData["Message"]      = obj.WarehouseCode + " is already exist! Please check and try again.";
                TempData["MessageAlert"] = "warning";
                return(RedirectToAction("Index"));
            }

            if (response.IsSuccessful)
            {
                TempData["Message"]      = obj.Description + " successfully created!";
                TempData["MessageAlert"] = "success";
                Log.Error(string.Format(Type.GetType(typeof(WarehouseController).Name) + "||Create||Warehouse ID::{0}||API Response::{1}", obj.Id, response));
            }
            else
            {
                Error("An error has occurred");
                Log.Error(string.Format(Type.GetType(typeof(WarehouseController).Name) + "||Create||Warehouse ID::{0}||API Response::{1}", obj.Id, response));
                return(PartialView(obj));
                //return RedirectToAction("Index");
            }
            return(RedirectToAction("Index", "Warehouse"));
        }
        public ActionResult Edit(long?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Warehouse warehouse = db.Warehouses.Find(id);

            if (warehouse == null)
            {
                return(HttpNotFound());
            }
            WarehouseViewModel warehouseVM = new WarehouseViewModel
            {
                AdDescribtion = warehouse.Ad.AdDescribtion,
                AdPrice       = warehouse.Ad.AdPrice,
                AdTitle       = warehouse.Ad.AdTitle,
                HeightOfWall  = warehouse.HeightOfWall,
                NumberOfDoors = warehouse.NumberOfDoors,
                StreetArea    = warehouse.StreetArea,
                Id            = warehouse.AdId,
                CityId        = warehouse.Ad.CityId
            };

            ViewBag.CityId = new SelectList(db.Cities, "Id", "Name", warehouse.Ad.City.Name);

            return(View(warehouseVM));
        }
示例#3
0
        public ActionResult Warehouse(WarehouseViewModel model)
        {
            if (ModelState.IsValid)
            {
                //名称和编号不能重复
                var db = new DbEntities <Warehouse>().SimpleClient;

                if (db.IsAny(w => w.WarehouseName == model.WarehouseName || w.WarehouseNo == model.WarehouseNo))
                {
                    ModelState.AddModelError("WarehouseNo", "仓库名称或编号已存在");
                }
                else
                {
                    //检验当前登录身份是否过期,并获取当前登录人ID
                    if (new IdentityAuth().GetCurUserID(HttpContext, out int curUserID))
                    {
                        Warehouse entity = model.InitAddWarehouse(curUserID);

                        if (db.Insert(entity))
                        {
                            TempData["Msg"] = $"仓库 {entity.WarehouseName} 添加成功";
                            return(RedirectToAction("List", "Warehouse"));
                        }
                        TempData["Msg"] = "添加失败";
                    }
                    else
                    {
                        TempData["Msg"] = "登录身份过期,请重新登录";
                    }
                }
            }
            return(View(model));
        }
示例#4
0
        public ActionResult Inventory()
        {
            var model = new WarehouseViewModel();

            model.SelectableCustomers = _customerDynamicsRepository.GetSelectableCustomers();

            var defaultCustomer = new SelectListItem()
            {
                Text  = "--Select Customer--",
                Value = null
            };

            model.SelectableCustomers.Insert(0, defaultCustomer);

            model.SelectableCountries = _countryRepository.GetSelectableCountries();

            var defaultCountry = new SelectListItem()
            {
                Text  = "--Select Country--",
                Value = null
            };

            model.SelectableCountries.Insert(0, defaultCountry);

            return(View(model));
        }
        public ActionResult Edit(int?Id)
        {
            var Warehouse = WarehouseRepository.GetWarehouseById(Id.Value);

            if (Warehouse != null && Warehouse.IsDeleted != true)
            {
                var model = new WarehouseViewModel();
                AutoMapper.Mapper.Map(Warehouse, model);

                //if (model.CreatedUserId != Erp.BackOffice.Helpers.Common.CurrentUser.Id && Erp.BackOffice.Helpers.Common.CurrentUser.UserTypeId != 1)
                //{
                //    TempData["FailedMessage"] = "NotOwner";
                //    return RedirectToAction("Index");
                //}

                ViewBag.branchList = branchRepository.GetAllBranch().AsEnumerable().Select(x => new SelectListItem {
                    Value = x.Id + "", Text = x.Name
                });
                List <string> listCategories = new List <string>();
                if (!string.IsNullOrEmpty(Warehouse.Categories))
                {
                    listCategories = Warehouse.Categories.Split(',').ToList();
                }
                ViewBag.listCategories = listCategories;
                return(View(model));
            }

            if (Request.UrlReferrer != null)
            {
                return(Redirect(Request.UrlReferrer.AbsoluteUri));
            }
            return(RedirectToAction("Index"));
        }
示例#6
0
        public WarehouseViewModel GetWarehouses(bool justActive = false)
        {
            WarehouseViewModel warehouseViewModel = new WarehouseViewModel();
            var query = $"SELECT * FROM Almacen";

            if (justActive)
            {
                query += $" WHERE Estatus = 1";
            }

            DataTable dtWarehouses = _db.GetData(query, autoConnect: true);

            foreach (DataRow row in dtWarehouses.Rows)
            {
                warehouseViewModel.Warehouses.Add(new Warehouse()
                {
                    Id         = (Guid)row["ID"],
                    CreateDate = (DateTime)row["FechaRegistro"],
                    Code       = (string)row["Codigo"],
                    Name       = (string)row["Nombre"],
                    Status     = (bool)row["Estatus"],
                    Store      = GetStoreById((Guid)row["SucursalID"])
                });
            }
            return(warehouseViewModel);
        }
        public IActionResult UpSet(int?id)
        {
            var warehouseVM = new WarehouseViewModel()
            {
                InventoryItems = _allDbSets.InventoryItem.GetCategoryListOfDropDown(),
                Warehouse      = new Warehouse(),
            };

            if (id != null)
            {
                var warehouseFromDB = _allDbSets.Warehouse.GetFisrtOrDefault(c => c.Id == id.GetValueOrDefault());
                if (warehouseFromDB == null)
                {
                    return(NotFound());
                }
                else
                {
                    warehouseVM.Warehouse = warehouseFromDB;
                    return(View(warehouseVM));
                }
            }
            else
            {
                return(View(warehouseVM));
            }
        }
        //[AuthorizeUser(RoleModule.Warehouse, Function.Create)]
        public JsonResult Insert(WarehouseViewModel wViewModel)
        {
            Set_Date_Session(wViewModel.WarehouseInfo);

            using (TransactionScope tran = new TransactionScope())
            {
                try
                {
                    wViewModel.WarehouseInfo.Id = _warehouseManager.Insert_Warehouse(wViewModel.WarehouseInfo);

                    wViewModel.AddressViewModelList.Address.AddressFor = AddressFor.Warehouse.ToString();

                    wViewModel.ContactViewModelList.ContactDetails.ContactFor = AddressFor.Warehouse.ToString();

                    wViewModel.FriendlyMessage.Add(MessageStore.Get("WAREHOUSE01"));

                    Logger.Debug("Warehouse Controller Insert");

                    tran.Complete();
                }
                catch (Exception ex)
                {
                    tran.Dispose();

                    wViewModel.FriendlyMessage.Add(MessageStore.Get("SYS01"));

                    Logger.Error("Warehouse Controller - Insert " + ex.Message);
                }
            }
            return(Json(wViewModel));
        }
        //[AuthorizeUser(RoleModule.Warehouse, Function.View)]
        public JsonResult GetWarehouses(WarehouseViewModel wViewModel)
        {
            PaginationInfo pager = new PaginationInfo();

            pager = wViewModel.Pager;

            PaginationViewModel pViewModel = new PaginationViewModel();

            try
            {
                pViewModel.dt = _warehouseManager.GetWarehouses(wViewModel.WarehouseFilter.WarehouseName, ref pager);

                pViewModel.Pager = pager;

                Logger.Debug("Warehouse Controller GetWarehouses");
            }

            catch (Exception ex)
            {
                wViewModel.FriendlyMessage.Add(MessageStore.Get("SYS01"));

                Logger.Error("Warehouse Controller - GetWarehouses" + ex.ToString());
            }

            return(Json(JsonConvert.SerializeObject(pViewModel), JsonRequestBehavior.AllowGet));
        }
示例#10
0
        public async Task CreateWarehouseShouldCreateNewWarehouse()
        {
            AutoMapperConfig.RegisterMappings(typeof(ErrorViewModel).GetTypeInfo().Assembly);
            var options = new DbContextOptionsBuilder <WHMSDbContext>().UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;

            using var context = new WHMSDbContext(options);
            var service = new WarehouseService(context);

            var warehouse = new WarehouseViewModel
            {
                Address = new AddressViewModel
                {
                    City          = "Test",
                    StreetAddress = "Test",
                    Zip           = "test",
                    Country       = "Test",
                },
                Name       = "Test",
                IsSellable = true,
            };

            await service.CreateWarehouseAsync(warehouse);

            var warehouseCount = context.Warehouses.Count();
            var expectedCount  = 1;

            Assert.Equal(expectedCount, warehouseCount);
        }
        //[AuthorizeUser(RoleModule.Warehouse, Function.Edit)]
        public JsonResult Update(WarehouseViewModel wViewModel)
        {
            Set_Date_Session(wViewModel.WarehouseInfo);

            using (TransactionScope tran = new TransactionScope())
            {
                try
                {
                    _warehouseManager.Update_Warhouse(wViewModel.WarehouseInfo);

                    wViewModel.FriendlyMessage.Add(MessageStore.Get("WAREHOUSE02"));

                    Logger.Debug("Warehouse Controller Update");

                    tran.Complete();
                }
                catch (Exception ex)
                {
                    tran.Dispose();

                    wViewModel.FriendlyMessage.Add(MessageStore.Get("SYS01"));

                    Logger.Error("Warehouse Controller - Update  " + ex.Message);
                }
            }
            return(Json(wViewModel));
        }
示例#12
0
        // GET: Warehouse
        public ActionResult Index()
        {
            List <WarehouseViewModel> warehouseViewModels = new List <WarehouseViewModel>();
            IEnumerable <Warehouse>   warehouses          = warehouseService.GetAll();

            foreach (Warehouse warehouse in warehouses)
            {
                List <string> allCourseProperties = warehouse.GetType().GetProperties().Select(x => x.Name).Except(excludeProperties).ToList();
                List <string> selectedCourses     = new List <string>();
                foreach (string courseName in allCourseProperties)
                {
                    var value = warehouse.GetType().GetProperty(courseName).GetValue(warehouse, null);
                    if (value != null && value.Equals(true))
                    {
                        selectedCourses.Add(courseName);
                    }
                }
                WarehouseViewModel warehouseViewModel = new WarehouseViewModel
                {
                    Warehouse       = warehouse,
                    SelectedCourses = selectedCourses
                };
                warehouseViewModels.Add(warehouseViewModel);
            }
            return(View(warehouseViewModels));
        }
示例#13
0
        public ActionResult Create(WarehouseViewModel model)
        {
            if (ModelState.IsValid)
            {
                var Warehouse = new Domain.Sale.Entities.Warehouse();
                AutoMapper.Mapper.Map(model, Warehouse);
                Warehouse.IsDeleted      = false;
                Warehouse.CreatedUserId  = WebSecurity.CurrentUserId;
                Warehouse.ModifiedUserId = WebSecurity.CurrentUserId;
                Warehouse.CreatedDate    = DateTime.Now;
                Warehouse.ModifiedDate   = DateTime.Now;
                Warehouse.KeeperId       = Request["KeeperId"];
                Warehouse.Categories     = Request["Categories"];
                Warehouse.IsSale         = model.IsSale;
                Warehouse.BranchId       = Helpers.Common.CurrentUser.BranchId;

                //tạo đặc tính động cho kho hàng nếu có danh sách đặc tính động truyền vào và đặc tính đó phải có giá trị
                ObjectAttributeController.CreateOrUpdateForObject(Warehouse.Id, model.AttributeValueList);

                WarehouseRepository.InsertWarehouse(Warehouse);

                //if(string.IsNullOrEmpty(Request["IsPopup"]) == false)
                //{
                //    ViewBag.closePopup = "close and append to page parent";
                //    model.Id = Warehouse.Id;
                //    return View(model);
                //}


                TempData[Globals.SuccessMessageKey] = App_GlobalResources.Wording.InsertSuccess;
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
 public static void updateWarehouse(this Warehouse warehouse, WarehouseViewModel warehouseVm)
 {
     warehouse.WarehouseID          = warehouseVm.WarehouseID;
     warehouse.WarehouseName        = warehouseVm.WarehouseName;
     warehouse.WarehouseAddress     = warehouseVm.WarehouseAddress;
     warehouse.WarehouseNumberphone = warehouseVm.WarehouseNumberphone;
 }
        public ActionResult searchWarehouse(string wareName)
        {
            WarehouseViewModel warehouseViewModel = new WarehouseViewModel();

            //判断是否是管理人员,是则有权限进行修改
            if (Convert.ToInt32(Session["level"]) == Convert.ToInt32(level.Admin))
            {
                warehouseViewModel.display = "";
            }
            else
            {
                warehouseViewModel.display = "display:none";
            }

            warehouseViewModel.UserName = Session["User"].ToString();

            WarehouseBusinessLayer warehouseBusinessLayer = new WarehouseBusinessLayer();//第几页

            int pageNumber = 1;
            //每页显示多少条
            int pageSize = int.Parse(ConfigurationManager.AppSettings["pageSize"]);

            warehouseViewModel.warehouses = warehouseBusinessLayer.GetWarehouse(wareName).ToPagedList(pageNumber, pageSize);

            return(View("Warehouse", warehouseViewModel));
        }
        //[AdminFilter]
        public ActionResult Warehouse(int?page)
        {
            WarehouseViewModel warehouseViewModel = new WarehouseViewModel();

            //判断是否是管理人员,是则有权限进行修改
            if (Convert.ToInt32(Session["level"]) == Convert.ToInt32(level.Admin))
            {
                warehouseViewModel.display = "";
            }
            else
            {
                warehouseViewModel.display = "display:none";
            }

            warehouseViewModel.UserName = Session["User"].ToString();

            //第几页
            int pageNumber = page ?? 1;

            if (NoChangePage)
            {
                pageNumber   = HomeController.page;
                NoChangePage = false;
            }
            HomeController.page = pageNumber;

            //每页显示多少条
            int pageSize = int.Parse(ConfigurationManager.AppSettings["pageSize"]);

            WarehouseBusinessLayer warehouseBusinessLayer = new WarehouseBusinessLayer();

            warehouseViewModel.warehouses = warehouseBusinessLayer.GetWarehouse().ToPagedList(pageNumber, pageSize);

            return(View("Warehouse", warehouseViewModel));
        }
示例#17
0
        public ActionResult Edit(int?Id)
        {
            var Warehouse = WarehouseRepository.GetWarehouseById(Id.Value);

            if (Warehouse != null && Warehouse.IsDeleted != true)
            {
                var model = new WarehouseViewModel();
                AutoMapper.Mapper.Map(Warehouse, model);
                List <string> listCategories = new List <string>();
                if (!string.IsNullOrEmpty(Warehouse.Categories))
                {
                    listCategories = Warehouse.Categories.Split(',').ToList();
                }
                ViewBag.listCategories = listCategories;

                List <string> listKeeperID = new List <string>();
                if (!string.IsNullOrEmpty(Warehouse.KeeperId))
                {
                    listKeeperID = Warehouse.KeeperId.Split(',').ToList();
                }
                ViewBag.listKeeperID = listKeeperID;
                return(View(model));
            }

            if (Request.UrlReferrer != null)
            {
                return(Redirect(Request.UrlReferrer.AbsoluteUri));
            }
            return(RedirectToAction("Index"));
        }
        public IActionResult UpSet(WarehouseViewModel warehouseVM)
        {
            var claimIdentity = (ClaimsIdentity)this.User.Identity;
            var claim         = claimIdentity.FindFirst(ClaimTypes.NameIdentifier);

            warehouseVM.Warehouse.EmployeeId = claim.Value;
            if (!ModelState.IsValid)
            {
                warehouseVM.InventoryItems = _allDbSets.InventoryItem.GetCategoryListOfDropDown();
                return(View(warehouseVM));
            }
            else
            {
                if (warehouseVM.Warehouse.Id != 0)
                {
                    _allDbSets.Warehouse.Update(warehouseVM.Warehouse);
                }
                else
                {
                    var checkWarehouse = _allDbSets.Warehouse.GetFisrtOrDefault(w => w.ItemId == warehouseVM.Warehouse.ItemId);
                    if (checkWarehouse == null)
                    {
                        warehouseVM.Warehouse.DateAdded = DateTime.Now;
                        _allDbSets.Warehouse.Add(warehouseVM.Warehouse);
                    }
                    else
                    {
                        checkWarehouse.Quantity = warehouseVM.Warehouse.Quantity + checkWarehouse.Quantity;
                    }
                }
                _allDbSets.Save();
                return(RedirectToAction(nameof(Index)));
            }
        }
示例#19
0
        public IActionResult Update([FromBody] CrudViewModel <WarehouseViewModel> payload)
        {
            WarehouseViewModel value = payload.value;
            var result = _functionalService
                         .Update <WarehouseViewModel, Warehouse>(value, Convert.ToInt32(value.WarehouseId));

            return(Ok());
        }
示例#20
0
        public async Task UpdateWarehouseEmail(WarehouseViewModel viewModel, int id)
        {
            var email = await _context.Emails.SingleOrDefaultAsync(e => e.WarehouseId == id);

            email.Mail     = viewModel.Email.Mail;
            email.MailType = viewModel.Email.MailType;
            _context.Emails.Update(email);
        }
示例#21
0
        public async Task UpdateWarehousePhone(WarehouseViewModel viewModel, int id)
        {
            var phone = await _context.Phones.SingleOrDefaultAsync(p => p.WarehouseId == id);

            phone.Number    = viewModel.Phone.Number;
            phone.PhoneType = viewModel.Phone.PhoneType;
            _context.Phones.Update(phone);
        }
示例#22
0
        public ActionResult Create()
        {
            var obj = new WarehouseViewModel()
            {
                CustomerId = int.Parse(CookieHelper.CustomerId)
            };

            return(PartialView(obj));
        }
示例#23
0
        public IActionResult Details(WarehouseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                //TODO: return error
            }

            return(View("Details", model));
        }
示例#24
0
        public IActionResult Move(WarehouseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                //TODO: return error
            }

            return(View("Move", model));
        }
        public virtual WarehouseViewModel CreateWarehouseViewModel(string warehouseCode)
        {
            var viewModel = new WarehouseViewModel
            {
                Warehouse = _warehouseService.GetWarehouse(warehouseCode)
            };

            return(viewModel);
        }
示例#26
0
        public ActionResult CreateWarehouse()
        {
            WarehouseViewModel warehouseViewModel = new WarehouseViewModel()
            {
                Sectors = _sectorRepository.allSectors()
            };

            return(View(warehouseViewModel));
        }
示例#27
0
        public async Task CreateWarehouseAddress(WarehouseViewModel viewModel, int warehouseId)
        {
            var address = _mapper.Map <Address>(viewModel.Address);

            address.WarehouseId = warehouseId;
            await _context.Addresses.AddAsync(address);

            await _context.SaveChangesAsync();
        }
示例#28
0
 /// <summary>
 /// 实时界面数据刷新
 /// </summary>
 private void Page_Frush()
 {
     warehouseBase.WarehouseList.Clear();
     foreach (var model in WarehouseViewModel.GetWarehouseList())
     {
         warehouseBase.WarehouseList.Add(model);
     }
     this.WarehouseDataGrid.ItemsSource = warehouseBase.WarehouseList;
 }
示例#29
0
        public async Task <IActionResult> AddWarehouse(WarehouseViewModel input)
        {
            if (this.ModelState.IsValid)
            {
                await this.warehouseService.CreateWarehouseAsync(input);
            }

            return(this.Redirect("/Products/ManageWarehouses"));
        }
示例#30
0
 public ActionResult Edit(WarehouseViewModel warehouse)
 {
     if (ModelState.IsValid)
     {
         var entity = Mapper.Map <Warehouse>(warehouse);
         warehouseService.Update(entity);
         return(RedirectToAction("Index"));
     }
     return(View(warehouse));
 }