Ejemplo n.º 1
0
        /// <summary>
        /// Рассчитать сумму закупочных цен по всем ожидающим поставки закупкам организации контрагента <paramref name="contractorOrganization"/>.
        /// </summary>
        /// <param name="contractorOrganization">Организация контрагента.</param>
        /// <param name="user">Пользователь, совершающий операцию.</param>
        /// <remarks>Учитываются только закупки, ожидающие поставки (еще не принятые).</remarks>
        public decimal GetPendingPurchaseCostSum(ContractorOrganization contractorOrganization, User user)
        {
            var acceptedSum = GetPurchaseCostSum((storageIds, userId) => acceptedPurchaseIndicatorRepository.GetPurchaseCostSumByContractorOrganization(contractorOrganization.Id, storageIds, userId), user);
            var approvedSum = GetPurchaseCostSum((storageIds, userId) => approvedPurchaseIndicatorRepository.GetPurchaseCostSumByContractorOrganization(contractorOrganization.Id, storageIds, userId), user);

            return(acceptedSum - approvedSum);
        }
Ejemplo n.º 2
0
        public void RemoveClientOrganization(Client client, ContractorOrganization contractorOrganization, User user)
        {
            var clientOrganization = contractorOrganization.As <ClientOrganization>();

            CheckPossibilityToRemoveClientOrganization(client, clientOrganization, user);

            client.RemoveContractorOrganization(contractorOrganization);
        }
Ejemplo n.º 3
0
        public void AddClientOrganization(Client client, ContractorOrganization contractorOrganization, User user)
        {
            user.CheckPermission(Permission.Client_ClientOrganization_Add);

            if (clientRepository.Query <AccountOrganization>().Where(x => x.Id == contractorOrganization.Id).Count() > 0)
            {
                throw new Exception("Организация не является организацией, доступной для клиентов. Она включена в список собственных организаций.");
            }

            client.AddContractorOrganization(contractorOrganization);
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Рассчитать сумму закупочных цен по всем закупкам организации контрагента <paramref name="contractorOrganization"/>.
 /// </summary>
 /// <param name="contractorOrganization">Организация контрагента.</param>
 /// <param name="user">Пользователь, совершающий операцию.</param>
 /// <remarks>Учитываются как принятые, так и ожидающие поставки закупки.</remarks>
 public decimal GetTotalPurchaseCostSum(ContractorOrganization contractorOrganization, User user)
 {
     return(GetPurchaseCostSum((storageIds, userId) => acceptedPurchaseIndicatorRepository.GetPurchaseCostSumByContractorOrganization(contractorOrganization.Id, storageIds, userId), user));
 }