コード例 #1
0
ファイル: DistributeBPExt.cs プロジェクト: GSIL-Monitor/BTP
        /// <summary>
        /// 微小店 上架商品
        /// </summary>
        public ResultDTO UpdateMicroshopComExt(Guid microshopComId, Guid microshopId)
        {
            var result = new ResultDTO {
                isSuccess = false
            };

            var microshopCom = MicroshopCom.ObjectSet().FirstOrDefault(t => t.CommodityId == microshopComId && t.MicroshopId == microshopId && !t.IsDel);

            if (microshopCom == null)
            {
                result.isSuccess = true;
                result.Message   = "获取数据失败";
                return(result);
            }

            microshopCom.ModifiedOn  = DateTime.Now;
            microshopCom.IsDel       = true;
            microshopCom.EntityState = EntityState.Modified;
            ContextFactory.CurrentThreadContext.SaveObject(microshopCom);

            int mcCount = ContextFactory.CurrentThreadContext.SaveChanges();

            if (mcCount > 0)
            {
                result.isSuccess = true;
                result.Message   = "上架成功";
            }
            else
            {
                result.Message = "上架失败";
            }
            return(result);
        }
コード例 #2
0
ファイル: DistributeBPExt.cs プロジェクト: GSIL-Monitor/BTP
        /// <summary>
        /// 微小店 下架商品
        /// </summary>
        public ResultDTO SaveMicroshopComExt(MicroshopComDTO microshopComDto)
        {
            var result = new ResultDTO {
                isSuccess = false
            };
            var mc = new MicroshopCom
            {
                Id          = Guid.NewGuid(),
                SubTime     = DateTime.Now,
                ModifiedOn  = DateTime.Now,
                CommodityId = microshopComDto.CommodityId,
                MicroshopId = microshopComDto.MicroshopId,
                IsDel       = false,
                EntityState = EntityState.Added
            };

            ContextFactory.CurrentThreadContext.SaveObject(mc);

            int mcCount = ContextFactory.CurrentThreadContext.SaveChanges();

            if (mcCount > 0)
            {
                result.isSuccess = true;
                result.Message   = "添加成功";
            }
            else
            {
                result.Message = "添加失败";
            }
            return(result);
        }
コード例 #3
0
        /// <summary>
        /// 获取某微小店的所有下架商品Id
        /// </summary>
        /// <param name="microshopId"></param>
        /// <returns></returns>
        public List <Guid> GetMicroshopOfflineCommodityIdsExt(Guid microshopId)
        {
            var strMicroshopId = microshopId;
            var commodityIds   =
                MicroshopCom.ObjectSet()
                .Where(x => x.MicroshopId == strMicroshopId)
                .Select(x => x.CommodityId)
                .ToList();

            return(commodityIds);
        }
コード例 #4
0
ファイル: DistributeBPExt.cs プロジェクト: GSIL-Monitor/BTP
        /// <summary>
        /// 获取分销商微小店信息
        /// </summary>
        /// <param name="appId"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public DistributionMicroShopDTO GetDistributionMicroShopExt(Guid appId, Guid userId)
        {
            DistributionMicroShopDTO distributionMicroShopDto = new DistributionMicroShopDTO();

            try
            {
                var temp = (from ms in Microshop.ObjectSet()
                            where ms.AppId == appId && ms.UserId == userId
                            select new DistributionMicroShopDTO
                {
                    Id = ms.Id,
                    SubTime = ms.SubTime,
                    ModifiedOn = ms.ModifiedOn,
                    AppId = ms.AppId,
                    UserId = ms.UserId,
                    Logo = ms.Logo,
                    QRCodeUrl = ms.QRCodeUrl,
                    Name = ms.Name,
                    Url = ms.Url,
                    Type = (MicroshopTypeEnum)ms.Type.Value,
                    Key = ms.Key
                });
                distributionMicroShopDto = temp.FirstOrDefault();
                if (distributionMicroShopDto != null)
                {
                    //获取下架商品
                    var commodityIds = MicroshopCom.ObjectSet().Where(t => !t.IsDel && t.MicroshopId == distributionMicroShopDto.AppId).Select(c => c.CommodityId).Distinct().ToArray();
                    var dc           = (from cd in CommodityDistribution.ObjectSet()
                                        join c in Commodity.ObjectSet() on cd.Id equals c.Id
                                        where commodityIds.Contains(c.Id)
                                        select new CommodityVM
                    {
                        Id = c.Id,
                        Name = c.Name,
                        Price = c.Price,
                        MarketPrice = c.MarketPrice,
                        Pic = c.PicturesPath,
                        L1Percent = Math.Round((decimal)(cd.L1Percent * c.Price), 2),
                        L2Percent = Math.Round((decimal)(cd.L2Percent * c.Price), 2),
                        L3Percent = Math.Round((decimal)(cd.L3Percent * c.Price), 2)
                    });
                    List <CommodityVM> commodityVmsD = new List <CommodityVM>();
                    foreach (var commodityVm in dc)
                    {
                        if (commodityVm.L1Percent == null || commodityVm.L2Percent == null || commodityVm.L3Percent == null)
                        {
                            var model = AppExtension.ObjectSet().FirstOrDefault(t => t.Id == appId);
                            commodityVm.L1Percent = Math.Round((decimal)(model.DistributeL1Percent * commodityVm.Price), 2);
                            commodityVm.L2Percent = Math.Round((decimal)(model.DistributeL2Percent * commodityVm.Price), 2);
                            commodityVm.L3Percent = Math.Round((decimal)(model.DistributeL3Percent * commodityVm.Price), 2);
                        }
                        commodityVmsD.Add(commodityVm);
                    }
                    distributionMicroShopDto.DownCommodityDtos = commodityVmsD.ToList();

                    //获取符合条件的上架商品
                    var uc = (from cd in CommodityDistribution.ObjectSet()
                              join c in Commodity.ObjectSet() on cd.Id equals c.Id
                              where c.AppId == appId && !c.IsDel && c.CommodityType == 0 && c.State == 0 && !commodityIds.Contains(c.Id)
                              select new CommodityVM
                    {
                        Id = c.Id,
                        Name = c.Name,
                        Price = c.Price,
                        MarketPrice = c.MarketPrice,
                        Pic = c.PicturesPath,
                        L1Percent = Math.Round((decimal)(cd.L1Percent * c.Price), 2),
                        L2Percent = Math.Round((decimal)(cd.L2Percent * c.Price), 2),
                        L3Percent = Math.Round((decimal)(cd.L3Percent * c.Price), 2)
                    });
                    List <CommodityVM> commodityVmsU = new List <CommodityVM>();
                    foreach (var commodityVm in uc)
                    {
                        if (commodityVm.L1Percent == null || commodityVm.L2Percent == null || commodityVm.L3Percent == null)
                        {
                            var model = AppExtension.ObjectSet().FirstOrDefault(t => t.Id == appId);
                            commodityVm.L1Percent = Math.Round((decimal)(model.DistributeL1Percent * commodityVm.Price), 2);
                            commodityVm.L2Percent = Math.Round((decimal)(model.DistributeL2Percent * commodityVm.Price), 2);
                            commodityVm.L3Percent = Math.Round((decimal)(model.DistributeL3Percent * commodityVm.Price), 2);
                        }
                        commodityVmsU.Add(commodityVm);
                    }
                    distributionMicroShopDto.UpCommodityDtos = commodityVmsU.ToList();
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex.ToString());
            }
            return(distributionMicroShopDto);
        }