public async Task <ResultViewModel> GetById(string shopId, string goodId) { GoodInfo basicInfo = goodInfoBusiness.GetById(shopId, goodId); GoodInfoExtensionsDTO goodInfoExtensions = await goodInfoExtensionsBusiness.GetById(shopId, goodId); List <GoodInfoSKU> skuList = await goodInfoSKUBusiness.GetByGoodId(shopId, goodId); if (basicInfo == null || goodInfoExtensions == null) { return new ResultViewModel { Code = ResultCode.ParamsError, Message = "参数错误,找不到指定商品信息!", } } ; GoodDetailInfo goodDetailInfo = AutoMapperUtil.Singleton.Map <GoodDetailInfo>(goodInfoExtensions); goodDetailInfo.BasicInfo = AutoMapperUtil.Singleton.Map <GoodBasicInfoDTO>(basicInfo); goodDetailInfo.SKUList = AutoMapperUtil.Singleton.Map <List <GoodInfoSKUDTO> >(skuList); return(new ResultViewModel { Code = ResultCode.Success, Message = ResultMessage.Success, Data = goodDetailInfo }); }
public async Task <ResultViewModel> AddGoodInfo([FromBody] GoodDetailInfo goodDetailInfo) { if (goodDetailInfo == null) { return new ResultViewModel { Code = ResultCode.ParamsError, Message = "参数错误" } } ; ResultViewModel valRes = GoodDetailInfoValidator.Validate(goodDetailInfo); if (valRes.Code != ResultCode.Success) { return(valRes); } goodDetailInfo.ShopId = this.CurrentAuthShopId(); goodDetailInfo.GoodInfoId = Guid.NewGuid().ToString("N"); goodDetailInfo.BasicInfo.ShopId = this.CurrentAuthShopId(); goodDetailInfo.BasicInfo.Id = goodDetailInfo.GoodInfoId; GoodInfo goodBasicInfo = AutoMapperUtil.Singleton.Map <GoodInfo>(goodDetailInfo.BasicInfo); GoodInfoExtensionsDTO goodInfoExtensions = AutoMapperUtil.Singleton.Map <GoodInfoExtensionsDTO>(goodDetailInfo); List <GoodInfoSKU> skuList = AutoMapperUtil.Singleton.Map <List <GoodInfoSKU> >(goodDetailInfo.SKUList); foreach (var skuItem in skuList) { skuItem.ShopId = this.CurrentAuthShopId(); skuItem.GoodInfoId = goodDetailInfo.GoodInfoId; } DataResult dataResult = await goodInfoBusiness.AddGoodInfo(goodBasicInfo, goodInfoExtensions, skuList); return(AutoMapperUtil.Singleton.Map <DataResult, ResultViewModel>(dataResult)); }
public async Task <GoodInfoExtensionsDTO> GetById(string shopId, string goodId) { GoodInfoExtensions goodInfoExtensions = await goodInfoExtensionsContext.FirstOrDefaultAsync(g => g.ShopId == shopId && g.GoodInfoId == goodId); if (goodInfoExtensions == null) { return(null); } GoodInfoExtensionsDTO goodInfoExtensionsDTO = new GoodInfoExtensionsDTO(); goodInfoExtensionsDTO.ShopId = goodInfoExtensions.ShopId; goodInfoExtensionsDTO.GoodInfoId = goodInfoExtensions.GoodInfoId; try { if (!string.IsNullOrEmpty(goodInfoExtensions.Banner)) { goodInfoExtensionsDTO.BannerList = JsonConvert.DeserializeObject <List <MediaItem> >(goodInfoExtensions.Banner); } } catch { } try { if (!string.IsNullOrEmpty(goodInfoExtensions.DescMedia)) { goodInfoExtensionsDTO.DescMediaList = JsonConvert.DeserializeObject <List <MediaItem> >(goodInfoExtensions.DescMedia); } } catch { } try { if (!string.IsNullOrEmpty(goodInfoExtensions.Specification)) { goodInfoExtensionsDTO.SpecificationList = JsonConvert.DeserializeObject <List <GoodInfoSpecificationItem> >(goodInfoExtensions.Specification); } } catch { } return(goodInfoExtensionsDTO); }
public Task <DataResult> AddGoodInfo(GoodInfo goodInfo, GoodInfoExtensionsDTO goodInfoExtensionsDTO, List <GoodInfoSKU> skuList) { GoodInfoExtensions goodInfoExtensions = new GoodInfoExtensions(); goodInfoExtensions.ShopId = goodInfoExtensionsDTO.ShopId; goodInfoExtensions.GoodInfoId = goodInfoExtensionsDTO.GoodInfoId; if (goodInfoExtensionsDTO.BannerList != null && goodInfoExtensionsDTO.BannerList.Count > 0) { goodInfoExtensions.Banner = JsonConvert.SerializeObject(goodInfoExtensionsDTO.BannerList); } if (goodInfoExtensionsDTO.DescMediaList != null && goodInfoExtensionsDTO.DescMediaList.Count > 0) { goodInfoExtensions.DescMedia = JsonConvert.SerializeObject(goodInfoExtensionsDTO.DescMediaList); } if (goodInfoExtensionsDTO.SpecificationList != null && goodInfoExtensionsDTO.SpecificationList.Count > 0) { goodInfoExtensions.Specification = JsonConvert.SerializeObject(goodInfoExtensionsDTO.SpecificationList); } return(goodInfoContext.AddGoodInfo(goodInfo, goodInfoExtensions, skuList)); }
public async Task <ResultViewModel> UpdateGoodInfo([FromBody] GoodDetailInfo goodDetailInfo) { if (goodDetailInfo == null || string.IsNullOrEmpty(goodDetailInfo.GoodInfoId)) { return new ResultViewModel { Code = ResultCode.ParamsError, Message = "参数错误" } } ; ResultViewModel valRes = GoodDetailInfoValidator.Validate(goodDetailInfo); if (valRes.Code != ResultCode.Success) { return(valRes); } goodDetailInfo.ShopId = this.CurrentAuthShopId(); goodDetailInfo.BasicInfo.ShopId = this.CurrentAuthShopId(); goodDetailInfo.BasicInfo.Id = goodDetailInfo.GoodInfoId; GoodInfo goodBasicInfo = AutoMapperUtil.Singleton.Map <GoodInfo>(goodDetailInfo.BasicInfo); goodInfoBusiness.Update(goodBasicInfo); GoodInfoExtensionsDTO goodInfoExtensions = AutoMapperUtil.Singleton.Map <GoodInfoExtensionsDTO>(goodDetailInfo); goodInfoExtensionsBusiness.Update(goodInfoExtensions); List <GoodInfoSKU> skuList = AutoMapperUtil.Singleton.Map <List <GoodInfoSKU> >(goodDetailInfo.SKUList); await goodInfoSKUBusiness.Update(this.CurrentAuthShopId(), goodDetailInfo.GoodInfoId, skuList); return(new ResultViewModel { Code = ResultCode.Success, Message = "操作成功!" }); }
public void Update(GoodInfoExtensionsDTO goodInfoExtensionsDTO) { GoodInfoExtensions goodInfoExtensions = new GoodInfoExtensions(); goodInfoExtensions.ShopId = goodInfoExtensionsDTO.ShopId; goodInfoExtensions.GoodInfoId = goodInfoExtensionsDTO.GoodInfoId; if (goodInfoExtensionsDTO.BannerList != null && goodInfoExtensionsDTO.BannerList.Count > 0) { goodInfoExtensions.Banner = JsonConvert.SerializeObject(goodInfoExtensionsDTO.BannerList); } if (goodInfoExtensionsDTO.DescMediaList != null && goodInfoExtensionsDTO.DescMediaList.Count > 0) { goodInfoExtensions.DescMedia = JsonConvert.SerializeObject(goodInfoExtensionsDTO.DescMediaList); } if (goodInfoExtensionsDTO.SpecificationList != null && goodInfoExtensionsDTO.SpecificationList.Count > 0) { goodInfoExtensions.Specification = JsonConvert.SerializeObject(goodInfoExtensionsDTO.SpecificationList); } goodInfoExtensionsContext.Update(goodInfoExtensions); }
public async Task <ResultViewModel> GetPrice([FromBody] List <GetGoodPriceParams> getGoodPriceParamsList) { List <GoodPriceViewModel> goodPriceList = new List <ViewModel.GoodPriceViewModel>(); foreach (var paramsItem in getGoodPriceParamsList) { if (string.IsNullOrEmpty(paramsItem.ShopId) || string.IsNullOrEmpty(paramsItem.GoodInfoId)) { break; } GoodInfoExtensionsDTO goodInfoExtensions = await goodInfoExtensionsBusiness.GetById(paramsItem.ShopId, paramsItem.GoodInfoId); if (goodInfoExtensions == null) { break; } //如果没有规格,直接返回默认值 if (goodInfoExtensions.SpecificationList == null || goodInfoExtensions.SpecificationList.Count <= 0) { GoodInfo basicInfo = goodInfoBusiness.GetById(paramsItem.ShopId, paramsItem.GoodInfoId); if (basicInfo == null) { break; } GoodPriceViewModel price = AutoMapperUtil.Singleton.Map <GoodPriceViewModel>(paramsItem); price.Price = basicInfo.Price; break; } GoodInfoSKU sku = await goodInfoSKUBusiness.GetSKUBySpecification(paramsItem.ShopId, paramsItem.GoodInfoId, paramsItem.SpecificationValue1, paramsItem.SpecificationValue2, paramsItem.SpecificationValue3); if (sku != null) { GoodPriceViewModel price = AutoMapperUtil.Singleton.Map <GoodPriceViewModel>(paramsItem); price.Price = sku.Price; } else //如果没有SKU,直接返回默认值 { GoodInfo basicInfo = goodInfoBusiness.GetById(paramsItem.ShopId, paramsItem.GoodInfoId); if (basicInfo == null) { break; } GoodPriceViewModel price = AutoMapperUtil.Singleton.Map <GoodPriceViewModel>(paramsItem); price.Price = basicInfo.Price; break; } } return(new ResultViewModel { Code = ResultCode.Success, Message = ResultMessage.Success, Data = goodPriceList }); }