Пример #1
0
        /// <summary>
        /// 取消门店预约
        /// </summary>
        public ReturnResponse CancelBusinessReserve(DTOEditUpgradeInfoItem dto)
        {
            Repository <Prc_UpgradeInfoItem> repository = new Repository <Prc_UpgradeInfoItem>(DbContext);
            Prc_UpgradeInfoItem editItem = repository.Get(a => a.ID == dto.ID);

            editItem.UpgradeStatus = EnumUpgradeStatus.Canceled;
            repository.Update(editItem);
            OperateLoger.Write(LoginUserInfo.CurrUser.UserName, DateTime.Now, "忽略门店【" + editItem.BusinessName + "】的升级预约");
            DbContext.SaveChanges();

            return(new ReturnResponse());
        }
Пример #2
0
        public DTOBackReserveUpgrade ReserveUpgrade([FromBody] DTOReserveUpgrade dto)
        {
            if (dto.BusinessInfos == null || dto.BusinessInfos.Count == 0)
            {
                throw new Exception("门店信息不能为空");
            }
            DTOBackReserveUpgrade            result         = new DTOBackReserveUpgrade();
            Repository <Prc_UpgradeInfo>     repositoryInfo = new Repository <Prc_UpgradeInfo>(DbContext);
            Repository <Prc_UpgradeInfoItem> repositoryItem = new Repository <Prc_UpgradeInfoItem>(DbContext);
            Repository <Prc_VersionInfo>     repositoryVer  = new Repository <Prc_VersionInfo>(DbContext);

            var oldInfo = repositoryInfo.Get(a => a.MallCode == dto.MallCode && !a.IsDelete && (a.UpgradeStatus == EnumUpgradeStatus.Reserved || a.UpgradeStatus == EnumUpgradeStatus.Upgrading));

            if (oldInfo != null)
            {
                if (oldInfo.TargetVersionID != dto.TargetVersionID)
                {
                    throw new Exception("平台存在未完成的预约");
                }
                else
                {
                    return(new DTOBackReserveUpgrade()
                    {
                        InfoID = oldInfo.ID
                    });
                }
            }

            Prc_VersionInfo upgradeVer = repositoryVer.Get(ver => ver.ID == dto.TargetVersionID && !ver.IsDelete);

            if (upgradeVer == null)
            {
                throw new Exception("未找到版本信息");
            }

            Prc_UpgradeInfo info = new Prc_UpgradeInfo()
            {
                BusinessCount     = dto.BusinessInfos.Count,
                ContactPerson     = dto.ContactPerson,
                ContactPhone      = dto.ContactPhone,
                MallCode          = dto.MallCode,
                MallName          = dto.MallName,
                OriginalVersionNo = dto.OriginalVersionNo,
                ReserveTime       = dto.ReserveTime,
                TargetVersionNo   = dto.TargetVersionNo,
                TargetVersionID   = upgradeVer.ID,
                CreateOperateUser = BLLUpgrade.SystemUser,
                UpgradeStatus     = EnumUpgradeStatus.Reserved,
                HeartbeatTime     = DateTime.Now,
                IsSingle          = dto.IsSingle,
                ApplyTime         = dto.ApplyTime
            };

            repositoryInfo.Add(info);
            dto.BusinessInfos.ForEach(a =>
            {
                Prc_UpgradeInfoItem item = new Prc_UpgradeInfoItem()
                {
                    BusinessNum       = a.BusinessNum,
                    BusinessType      = (EnumBusinessType)a.BusinessType,
                    CreateOperateUser = BLLUpgrade.SystemUser,
                    BusinessName      = a.BusinessName,
                    HeartbeatStatus   = -1,
                    UpgradeInfo       = info,
                    UpgradeStatus     = EnumUpgradeStatus.Reserved,
                    UpgradeBagStatus  = EnumUpgradeBagStatus.None
                };
                repositoryItem.Add(item);
            });
            result.InfoID = info.ID;
            DbContext.SaveChanges();

            return(result);
        }