Ejemplo n.º 1
0
        /// <summary>
        /// 将之前没有设置商品拼音的商品重新设置
        /// </summary>
        private void InitProductName()
        {
            var products = _context.Products.ToList();

            products.ForEach(product => {
                //if (!string.IsNullOrEmpty(product.Pinyin)) return;
                product.Pinyin      = UtilHelper.GetPinyin(product.Name);
                product.FirstLetter = UtilHelper.GetFirstPinyin(product.Name);
            });
            _context.SaveChanges();
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Update([FromBody] ProductModel product, [FromServices] IHostingEnvironment host)
        {
            var result = new JsonData();

            if (!string.IsNullOrEmpty(product.Img400))
            {
                var file = new ProductImage
                {
                    CreateTime = DateTime.Now,
                    Name       = Guid.NewGuid().ToString().ToLower(),
                    Type       = ImageType.Product,
                    Length     = Convert.FromBase64String(product.Img400.Replace("data:image/jpeg;base64,", "")).Length
                };
                // 上传图片
                var msg = await Service.UploadImageAsync(AppData.ApiUri + "/Product", Business.ID, file.Name + "." + file.ExtensionName, product.Img400, product.Img200, product.Img100);

                if (msg != "ok")
                {
                    result.Msg = msg;
                    return(Json(result));
                }
                if (product.Images.Count > 0)
                {
                    //Service.DeleteImage(product.Images.First(), AppData.ApiUri, Business.ID);
                    Service.DeleteImage(product.Images.First());
                }
                product.Images = new List <ProductImage> {
                    file
                };
            }
            product.Pinyin      = UtilHelper.GetPinyin(product.Name);
            product.FirstLetter = UtilHelper.GetFirstPinyin(product.Name);
            // 图片上传成功后,修改商品
            Service.Update(product);
            result.Success = true;
            result.Msg     = "修改成功";
            return(Ok(result));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Save([FromBody] ProductModel product, [FromServices] IHostingEnvironment host)
        {
            var result = new JsonData();

            if (!string.IsNullOrEmpty(product.Img400))
            {
                var file = new ProductImage
                {
                    CreateTime = DateTime.Now,
                    Name       = Guid.NewGuid().ToString().ToLower(),
                    Type       = ImageType.Product,
                    Length     = Convert.FromBase64String(product.Img400.Replace("data:image/jpeg;base64,", "")).Length
                };
                // 上传图片
                var msg = await Service.UploadImageAsync(AppData.ApiUri + "/Product", Business.ID, file.Name + "." + file.ExtensionName, product.Img400, product.Img200, product.Img100);

                if (msg != "ok")
                {
                    result.Msg = msg;
                    return(Json(result));
                }
                product.Images = new List <ProductImage> {
                    file
                };
            }

            // 图片上传成功后,保存商品
            foreach (var item in product.Formats)
            {
                item.Code = Service.GetNextProductFormat();
            }
            var entity = new Product
            {
                BusinessId     = Business.ID,
                Description    = product.Description,
                MinBuyQuantity = product.MinBuyQuantity,
                Name           = product.Name,
                Pinyin         = UtilHelper.GetPinyin(product.Name),
                FirstLetter    = UtilHelper.GetFirstPinyin(product.Name),
                ProductTypeId  = product.ProductTypeId,
                UnitName       = product.UnitName,
                Scope          = product.Scope,
                Images         = product.Images,
                Formats        = product.Formats,
                Attributes     = product.Attributes,
                ProductIdSet   = product.ProductIdSet,
                Feature        = product.Feature,
                IsDiscount     = product.IsDiscount
            };

            Service.Add(entity);
            entity.Code = entity.ID.ToString().PadLeft(6, '0');
            Service.Commit();
            if (entity.Feature == ProductFeature.SetMeal && !string.IsNullOrEmpty(product.ProductIdSet))
            {
                product.ProductIdSet.Split(',').ToList().ForEach(a => {
                    var item = new ProductRelative {
                        SetMealId = entity.ID, ProductId = Convert.ToInt32(a)
                    };
                    Service.Add(item);
                });
            }
            result.Success = true;
            result.Msg     = "保存成功";
            return(Ok(result));
        }