Пример #1
0
        public StorageResources Execute(IDbConnection connection, int userId, StorageResources res, int planetId = 0)
        {
            var pr = _storeService.GetPremiumWorkModel(connection, userId);

            if (pr.IsActive)
            {
                return(_premiumActive(connection, userId, res, planetId));
            }
            if (!res.NeedFix())
            {
                return(res);
            }


            var fixedRes = FixCurrentResources(res);

            if (planetId == 0)
            {
                var updatedMother = _mother.SetNewResources(connection, userId, fixedRes);
                return(updatedMother.Resources);
            }

            var updatedPlanetRes = _planet.SetNewResources(connection, planetId, userId, fixedRes);

            return(updatedPlanetRes.Resources);
        }