public async Task <IActionResult> Index() { var pageIndex = 1; var pageSize = 12; var boCollection = await _BoRepository.PaginateAsyn(pageIndex, pageSize, x => x.SortCode, null, x => x.SK_WM_GoodsCategory); var boVMCollection = new List <SK_WM_GoodsVM>(); var orderNumber = 0; foreach (var bo in boCollection) { var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); boVMCollection.Add(boVM); } var user = User.Identity; ViewBag.UserLogonInformation = ""; if (user != null) { ViewBag.UserLogonInformation = user.Name; } return(View("Index", boVMCollection)); }
/// <summary> /// 订单确认页面 /// </summary> /// <returns></returns> //public async Task<IActionResult> CheckStand(List<SK_WM_OrderItem> orderItems, string orders) //{ // ////获取用户的姓名 // //ViewBag.UserLogonInformation = GetUserName(); // //var username = User.Identity.Name; // //var user = await _UserManager.FindByNameAsync(username); // //if (user == null) // //{ // // return View("../../Views/Home/Logon"); // //} // //if (orders != "" || orders != null) // //{ // // orderItems = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SK_WM_OrderItem>>(orders); // //} // //else // //{ // // orderItems = null; // // return View(); // //} // //ViewBag.GoodsShop = orderItems; // //var orderItemVM = new List<SK_WM_OrderItemVM>(); // //foreach (var item in orderItems) // //{ // // var goods = _GoodsRepository.GetSingleBy(x => x.ID == Guid.Parse(item.GoodsID)); // // var imgs = await _ImageRepository.FindByAsyn(x => x.RelevanceObjectID == goods.ID); // // var img = imgs.Where(x => x.IsForTitle == true).FirstOrDefault(); // // var shop = _ShopRepository.GetSingleBy(x => x.ID == Guid.Parse(goods.BelongToShopID)); // // item.GoodsID = goods.ID.ToString(); // // item.ShopName = shop.Name; // // item.ImgPath = img.UploadPath; // // item.Price = goods.Price; // // item.TotalPrice = (Convert.ToDecimal(goods.Price) * item.Count).ToString(); // // var orderItem = new SK_WM_OrderItemVM(item); // // orderItemVM.Add(orderItem); // //} // return View("../Home/OrderSure" /*orderItemVM*/); //} /// <summary> /// 店铺查询(客户访问) /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <IActionResult> Shop(Guid id) { //获取用户的姓名 ViewBag.UserLogonInformation = GetUserName(); //获取所有的店铺 根据当前用户的ID查询当对应的店铺信息 var shops = await _ShopRepository.GetAllIncludingAsyn(x => x.ShopForUser, x => x.ShopAvatar, x => x.ShopBanner, x => x.ShopForExecuteIllegal); var shopForCurrUser = shops.Where(x => x.ID == id && x.ShopForExecuteIllegal.ShopState == (SK_WM_ShopState.ShopState.已开启).ToString()); var currShopID = shopForCurrUser.FirstOrDefault().ID; ViewBag.CurrShop = shopForCurrUser.FirstOrDefault(); //取出店铺对应的商品集合 var goodsCollection = await _BoRepository.GetAllIncludingAsyn(x => x.Shop); var goodsCollectionForCurrShop = goodsCollection.Where(x => x.Shop.ID == currShopID); var goodsVMCollection = new List <SK_WM_GoodsVM>(); var orderNumber = 0; foreach (var bo in goodsCollectionForCurrShop) { var image = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID).FirstOrDefault(); bo.GoodsIMG = image; var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); goodsVMCollection.Add(boVM); } return(View("Shop", goodsVMCollection)); }
public async Task <IActionResult> CreateOrEdit(Guid id) { var isNew = false; var bo = await _BoRepository.GetSingleAsyn(id, x => x.SK_WM_GoodsCategory); if (bo == null) { bo = new SK_WM_Goods(); bo.Name = ""; bo.ShelvesTime = DateTime.Now; bo.ModifyTime = DateTime.Now; bo.Description = ""; //bo.IMG = ""; isNew = true; } bo.ModifyTime = DateTime.Now; var boVM = new SK_WM_GoodsVM(bo); var goodsCategorys = _BoRepository.EntitiesContext.SK_WM_GoodsCategory.ToList(); var selectItems = new List <PlainFacadeItem>(); foreach (var item in goodsCategorys) { selectItems.Add(new PlainFacadeItem() { ID = item.ID.ToString(), Name = item.Name, SortCode = item.SortCode, DisplayName = item.Name }); } boVM.GoodsCategoryCollection = selectItems; boVM.IsNew = isNew; return(View("../../Views/BusinessOrganization/AdminBG/CreateOrEdit", boVM)); }
/// <summary> /// 店铺查询(店家访问) /// </summary> /// <returns></returns> public async Task <IActionResult> ShopForBusiness() { if (GetUserName() == null) { return(View("../../Views/Home/Logon")); } //获取用户的姓名 ViewBag.UserLogonInformation = GetUserName(); //获取当前登录的用户信息 var userName = User.Identity.Name; var user = await _UserManager.FindByNameAsync(userName); //获取所有的店铺 根据当前用户的ID查询当对应的店铺信息 var shops = await _ShopRepository.GetAllIncludingAsyn(x => x.ShopForUser, x => x.ShopAvatar, x => x.ShopBanner, x => x.ShopForExecuteIllegal); //店铺被封禁 暂时返回主页(未做其他处理) //var isIllegal = shops.Where(x => x.ShopForUser.Id == user.Id).FirstOrDefault().ShopForExecuteIllegal.ShopState; //if (shops.Where(x => x.ShopForUser.Id == user.Id).FirstOrDefault().ShopForExecuteIllegal.ShopState == (SK_WM_ShopState.ShopState.已停封).ToString()) //{ // return Redirect("../../Home/Index"); //} var shopForCurrUser = shops.Where(x => x.ShopForUser.Id == user.Id && x.ShopForExecuteIllegal.ShopState == (SK_WM_ShopState.ShopState.已开启).ToString()); //判断当前用户是否已经开了店铺(如果没有则跳转至申请入驻页面) if (shopForCurrUser.Count() == 0) { return(Redirect("../ShopManager/Settled")); } var currShopID = shopForCurrUser.FirstOrDefault().ID; ViewBag.CurrShop = shopForCurrUser.FirstOrDefault(); //取出店铺对应的商品集合 var goodsCollection = await _BoRepository.GetAllIncludingAsyn(x => x.Shop); var goodsCollectionForCurrShop = goodsCollection.Where(x => x.Shop.ID == currShopID); var goodsVMCollection = new List <SK_WM_GoodsVM>(); var orderNumber = 0; foreach (var bo in goodsCollectionForCurrShop) { var image = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID).FirstOrDefault(); bo.GoodsIMG = image; var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); goodsVMCollection.Add(boVM); } return(View("Shop", goodsVMCollection)); }
public async Task <IActionResult> ComDetail(Guid id) { ViewBag.UserLogonInformation = GetUserName(); var goods = await _BoRepository.GetAllIncludingAsyn(x => x.Shop, x => x.ShopForUser, x => x.SK_WM_GoodsCategory, x => x.GoodsIMG); var bo = goods.Where(x => x.ID == id).FirstOrDefault(); var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); ViewBag.Imgs = images; var boVM = new SK_WM_GoodsVM(bo); return(View("ComDetail", boVM)); }
public IActionResult SpecialtyExamine(string selectNnm) { ViewBag.UserLogonInformation = GetUserName(); var listPagePara = new ListPageParameter() { ObjectTypeID = "Order", // 对应的归属类型ID PageIndex = 1, // 当前页码 PageSize = 1, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; listPagePara.PageIndex = selectNnm != null?Convert.ToInt32(selectNnm) : 1; var user = User.Claims.FirstOrDefault(); if (user.Value == new Guid().ToString()) { return(View("../../Views/Home/Logon")); } var shop = _ShopRepository.GetSingleBy(x => x.ShopForUser.Id == user.Value); //查询订单详细所关联的商品列表 var GoodsItems = _GoodsRepository.FindBy(x => x.Shop.ID == shop.ID); //获取订单和订单对应的用户和商品 var orVMCollection = new List <SK_WM_GoodsVM>(); //存放用户所有订单 var OrderAll = GoodsItems.AsQueryable <SK_WM_Goods>(); var GoodsCollectionPageList = IQueryableExtensions.ToPaginatedList(OrderAll, listPagePara.PageIndex, listPagePara.PageSize); foreach (var order in GoodsCollectionPageList) { var omVM = new SK_WM_GoodsVM(order); orVMCollection.Add(omVM); } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_Goods>(GoodsCollectionPageList, 3, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("../../Views/BusinessOrganization/BusinessBG/SpecialtyExamine", orVMCollection)); }
/// <summary> /// 以局部页的方式的方式,构建明细数据的处理 /// </summary> /// <param name="id">商品对象的ID属性值</param> public async Task <IActionResult> Detail(Guid id) { var bo = await _BoRepository.GetSingleAsyn(id, x => x.SK_WM_GoodsCategory); var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); var imgCount = 0; foreach (var img in images) { bo.GoodsIMG = img; imgCount++; } ViewBag.imgCount = imgCount; ViewBag.DetailImgs = images; var boVM = new SK_WM_GoodsVM(bo); ViewBag.UserLogonInformation = GetUserName(); return(PartialView("../../Views/BusinessOrganization/PublicView/_Detail", boVM)); }
public async Task <IActionResult> Index() { var pageIndex = 1; var pageSize = 24; var boCollection = await _BoRepository.PaginateAsyn(pageIndex, pageSize, x => x.SortCode, null, x => x.SK_WM_GoodsCategory); var boVMCollection = new List <SK_WM_GoodsVM>(); var goodsCategory = _CateRepository.GetAll(); var orderNumber = 0; foreach (var bo in boCollection) { var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); foreach (var image in images) { if (image.IsForTitle == true) { bo.GoodsIMG = image; } } var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); boVMCollection.Add(boVM); } //获取用户的姓名 ViewBag.UserLogonInformation = GetUserName(); //获取网站标题 ViewBag.SiteTitle = SiteSettingsDetail().Name; GetGoodsForSearchHot(); string[] colorStart = new string[] { "#6bdea7", "#ff9229", "#b474fe", "#ff90a0" }; string[] colorEnd = new string[] { "#68937f", "#d17b28", "#594e90", "#cf7986" }; //ABOS_Admin(); ViewBag.colorStart = colorStart; ViewBag.colorEnd = colorEnd; //分类查询 //小吃快餐 var snVMCollection = new List <SK_WM_GoodsVM>(); var snCollection = boCollection.Where(x => x.SK_WM_GoodsCategory.Name == "小吃快餐").OrderByDescending(x => x.SalesVolume); foreach (var bo in snCollection) { var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); foreach (var image in images) { if (image.IsForTitle == true) { bo.GoodsIMG = image; } } var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); snVMCollection.Add(boVM); } ViewBag.snackFood = snVMCollection; //烧烤烤肉 var baVMCollection = new List <SK_WM_GoodsVM>(); var baCollection = boCollection.Where(x => x.SK_WM_GoodsCategory.Name == "烧烤烤肉").OrderByDescending(x => x.SalesVolume); foreach (var bo in baCollection) { var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); foreach (var image in images) { if (image.IsForTitle == true) { bo.GoodsIMG = image; } } var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); baVMCollection.Add(boVM); } ViewBag.barbecue = baVMCollection; //甜点饮品 var dsVMCollection = new List <SK_WM_GoodsVM>(); var dsCollection = boCollection.Where(x => x.SK_WM_GoodsCategory.Name == "甜点饮品").OrderByDescending(x => x.SalesVolume); foreach (var bo in dsCollection) { var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); foreach (var image in images) { if (image.IsForTitle == true) { bo.GoodsIMG = image; } } var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); dsVMCollection.Add(boVM); } ViewBag.dessert = dsVMCollection; //其他美食 var otVMCollection = new List <SK_WM_GoodsVM>(); var otCollection = boCollection.Where(x => x.SK_WM_GoodsCategory.Name == "其他美食").OrderByDescending(x => x.SalesVolume); foreach (var bo in otCollection) { var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); foreach (var image in images) { if (image.IsForTitle == true) { bo.GoodsIMG = image; } } var boVM = new SK_WM_GoodsVM(bo); boVM.OrderNumber = (++orderNumber).ToString(); otVMCollection.Add(boVM); } ViewBag.otherDelicacies = otVMCollection; ViewBag.categorys = goodsCategory; return(View("Index", boVMCollection)); }
public async Task <IActionResult> List(int pageIndex) { var listPagePara = new ListPageParameter() { ObjectTypeID = "Goods", // 对应的归属类型ID PageIndex = pageIndex, // 当前页码 PageSize = 8, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; var typeID = ""; var keyword = ""; if (!String.IsNullOrEmpty(listPagePara.ObjectTypeID)) { typeID = listPagePara.ObjectTypeID; } if (!String.IsNullOrEmpty(listPagePara.Keyword)) { keyword = listPagePara.Keyword; } var username = User.Identity.Name; var user = await _UserManager.FindByNameAsync(username); if (user == null) { return(View("../../Views/Home/Logon")); } //var pageIndex = 1; //var pageSize = 50; //var boCollection = new List<SK_WM_Goods>(); var boCollection = await _BoRepository.PaginateAsyn(listPagePara.PageIndex, listPagePara.PageSize, x => x.SortCode, null, x => x.SK_WM_GoodsCategory); var shop = await _ShopRepository.FindByAsyn(x => x.BelongToUserID == user.Id); var boVMCollection = new List <SK_WM_GoodsVM>(); var orderNumber = 0; foreach (var bo in boCollection) { //if (bo.BelongToShopID == shop.FirstOrDefault().ID.ToString()) //{ var boVM = new SK_WM_GoodsVM(bo); var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); if (images != null) { foreach (var img in images) { if (img.IsForTitle == true) { boVM.AvatarPath = img.UploadPath; } } //} boVM.OrderNumber = (++orderNumber).ToString(); boVMCollection.Add(boVM); } } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_Goods>(boCollection, 10, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; //return View("../../Views/BusinessOrganization/BusinessBG/Index", boVMCollection); //} return(PartialView("../../Views/BusinessOrganization/PublicView/_List", boVMCollection)); }
public async Task <IActionResult> Save([Bind("ID,IsNew,Name,GoodsCategoryID,Description,SortCode,ShelvesTime,ModifyTime,Price,FacadePrice,Unit,SalesVolume,Stock,State")] SK_WM_GoodsVM boVM) { var validateMessage = new ValidateMessage(); if (ModelState.IsValid) { var username = User.Identity.Name; var user = await _UserManager.FindByNameAsync(username); var shop = await _ShopRepository.FindByAsyn(x => x.BelongToUserID == user.Id); var hasDuplicateNmaeGoods = await _BoRepository.HasInstanceAsyn(x => x.Name == boVM.Name); if (hasDuplicateNmaeGoods && boVM.IsNew) { validateMessage.IsOK = false; validateMessage.ValidateMessageItems.Add( new ValidateMessageItem() { IsPropertyName = false, MessageName = "Name", Message = "商品名重复,换一个试试看吧" }); return(Json(validateMessage)); } var bo = new SK_WM_Goods(); if (!boVM.IsNew) { bo = await _BoRepository.GetSingleAsyn(boVM.ID); if (bo.BelongToUserID != user.Id) { validateMessage.IsOK = false; validateMessage.ValidateMessageItems.Add( new ValidateMessageItem() { IsPropertyName = false, MessageName = "Name", Message = "该商品不是你的,你没有权限编辑" }); return(Json(validateMessage)); } } // 处理一般的属性数据 boVM.MapToBo(bo); // 处理关联数据 if (!String.IsNullOrEmpty(boVM.GoodsCategoryID)) { var skwmgclssID = Guid.Parse(boVM.GoodsCategoryID); var skwmgclss = _BoRepository.EntitiesContext.SK_WM_GoodsCategory.FirstOrDefault(x => x.ID == skwmgclssID); bo.SK_WM_GoodsCategory = skwmgclss; } var saveStatus = false; //处理上传文件 var serverPath = ""; long size = 0; var files = Request.Form.Files; if (files.Count() > 0) { int i = 0; foreach (var file in files) { var fileName = ContentDispositionHeaderValue .Parse(file.ContentDisposition) .FileName .Trim('"') .Substring(files[0].FileName.LastIndexOf("\\") + 1); fileName = bo.ID + "_" + fileName; var boPath = "../../images/goodsImg/" + fileName; fileName = _HostingEnv.WebRootPath + $@"\images\goodsImg\{fileName}"; serverPath = fileName; size += file.Length; using (FileStream fs = System.IO.File.Create(fileName)) { file.CopyTo(fs); fs.Flush(); } var businessIamge = new BusinessImage() { DisplayName = bo.Name, RelevanceObjectID = bo.ID, UploadPath = boPath }; if (i == 0) { businessIamge.IsForTitle = true; } bo.GoodsIMG = businessIamge; i++; await _ImageRepository.AddOrEditAndSaveAsyn(businessIamge); } } bo.ShopForUser = user; bo.BelongToUserID = user.Id; bo.BelongToShopID = shop.FirstOrDefault().ID.ToString(); bo.Shop = shop.FirstOrDefault(); saveStatus = await _BoRepository.AddOrEditAndSaveAsyn(bo); if (saveStatus) { validateMessage.IsOK = true; validateMessage.ValidateMessageItems.Add( new ValidateMessageItem { IsPropertyName = false, MessageName = "Succeed", Message = "" }); return(Json(validateMessage)); } else { validateMessage.IsOK = false; validateMessage.ValidateMessageItems.Add( new ValidateMessageItem() { IsPropertyName = false, MessageName = "RemoteErr", Message = "数据保存异常" }); return(Json(validateMessage)); } } else { //return View("../../Views/BusinessOrganization/BusinessBG/CreateOrEdit", boVM); validateMessage.IsOK = false; var errCollection = from errKey in ModelState.Keys from errMessage in ModelState[errKey].Errors where ModelState[errKey].Errors.Count > 0 select(new { errKey, errMessage.ErrorMessage }); foreach (var errItem in errCollection) { var vmItem = new ValidateMessageItem() { IsPropertyName = true, MessageName = errItem.errKey, Message = errItem.ErrorMessage }; validateMessage.ValidateMessageItems.Add(vmItem); } return(Json(validateMessage)); } }