//    private readonly IApprovableDomainService _approvableDomainService;
        //    private readonly IGoodPartyAssignmentDomainService _goodPartyAssignmentDomainService;
        public OrderApplicationService(IOrderRepository orderRepository,
                                       IUnitOfWorkScope unitOfWorkScope,
            //  IGoodPartyAssignmentDomainService goodPartyAssignmentDomainService,
                                       //IFuelUserRepository userRepository,
                                       IVesselInCompanyDomainService vesselDomainService,
                                       IGoodDomainService goodDomainService,
                                       IOrderFactory iOrderFactory,
                                       ICompanyDomainService companyDomainService,
                                       IOrderItemDomainService orderItemDomainService,
                                       IEntityConfigurator<Order> orderConfigurator
            //,IApprovableDomainService approvableDomainService
            )
        {
            this.orderRepository = orderRepository;
            this.vesselDomainService = vesselDomainService;
            this.goodDomainService = goodDomainService;
            this.iOrderFactory = iOrderFactory;
            this.unitOfWorkScope = unitOfWorkScope;
            this.companyDomainService = companyDomainService;

            this.orderItemDomainService = orderItemDomainService;
            this.orderConfigurator = orderConfigurator;
            // _approvableDomainService = approvableDomainService;
            //  _goodPartyAssignmentDomainService = goodPartyAssignmentDomainService;
        }
Beispiel #2
0
 public OffhireFactory(
     IEntityConfigurator<Offhire> offhireConfigurator,
     IWorkflowRepository workflowRepository,
     IOffhireDomainService offhireDomainService,
     IVesselInCompanyDomainService vesselDomainService,
     ICompanyDomainService companyDomainService,
     ITankDomainService tankDomainService,
     ICurrencyDomainService currencyDomainService,
     IGoodDomainService goodDomainService,
     IGoodUnitDomainService goodUnitDomainService,
     IOffhireManagementSystemDomainService offhireManagementSystemDomainService,
     IVoyageDomainService voyageDomainService,
     IActivityLocationDomainService activityLocationDomainService)
 {
     this.offhireConfigurator = offhireConfigurator;
     this.workflowRepository = workflowRepository;
     this.offhireDomainService = offhireDomainService;
     this.vesselDomainService = vesselDomainService;
     this.companyDomainService = companyDomainService;
     this.tankDomainService = tankDomainService;
     this.currencyDomainService = currencyDomainService;
     this.goodDomainService = goodDomainService;
     this.goodUnitDomainService = goodUnitDomainService;
     this.offhireManagementSystemDomainService = offhireManagementSystemDomainService;
     this.voyageDomainService = voyageDomainService;
     this.activityLocationDomainService = activityLocationDomainService;
 }
 public GoodDomainService(IGoodAntiCorruptionAdapter antiCorruptionAdapter, IRepository<Good> goodRepository, ICompanyDomainService companyDomainService, IRepository<GoodUnit> companyGoodUnitRepository)
 {
     this.goodRepository = goodRepository;
     this.companyDomainService = companyDomainService;
     this.companyGoodUnitRepository = companyGoodUnitRepository;
     this.Adapter = antiCorruptionAdapter;
 }
        public OffhireApplicationService(
            IOffhireFactory offhireFactory,
            IOffhireRepository offhireRepository,
            IUnitOfWorkScope unitOfWorkScope,
            IOffhireDomainService offhireDomainService,
            IEntityConfigurator<Offhire> offhireConfigurator,
            IVesselInCompanyDomainService vesselDomianService,
            IVoyageDomainService voyageDomianService,
            ICompanyDomainService companyDomainService,
            ICurrencyDomainService currencyDomainService,
            IGoodDomainService goodDomainService,
            IGoodUnitDomainService goodUnitDomainService,
            ITankDomainService tankDomainService,
            IActivityLocationDomainService activityLocationDomainService,
            IOffhireManagementSystemDomainService offhireManagementSystemDomainService)
        {
            this.offhireFactory = offhireFactory;
            this.offhireRepository = offhireRepository;
            this.unitOfWorkScope = unitOfWorkScope;

            this.offhireDomainService = offhireDomainService;
            this.vesselDomianService = vesselDomianService;
            this.companyDomainService = companyDomainService;
            this.currencyDomainService = currencyDomainService;
            this.goodDomainService = goodDomainService;
            this.goodUnitDomainService = goodUnitDomainService;
            this.tankDomainService = tankDomainService;
            this.activityLocationDomainService = activityLocationDomainService;
            this.offhireManagementSystemDomainService = offhireManagementSystemDomainService;
            this.voyageDomianService = voyageDomianService;

            this.offhireDomainService.SetConfigurator(offhireConfigurator);
        }
 public VesselFacadeService(IVesselInCompanyDomainService vesselService,
     ICompanyDomainService iCompanyDomainService,
                                 IFacadeMapper<VesselInCompany, VesselDto> mapper)
 {
     _vesselService = vesselService;
     _iCompanyDomainService = iCompanyDomainService;
     Mapper = mapper;
 }
 public CompanyFacadeService(
     ICompanyDomainService companyDomainService,
     IVesselInCompanyDomainService vesselDomainService,
     IFacadeMapper<Company, CompanyDto> mapper, IVesselToVesselDtoMapper vesselDtoMapper)
 {
     _companyDomainService = companyDomainService;
     this.vesselDomainService = vesselDomainService;
     _mapper = mapper;
     this.vesselDtoMapper = vesselDtoMapper;
 }
Beispiel #7
0
        internal Offhire(
            long referenceNumber,
            DateTime startDateTime,
            DateTime endDateTime,
            Company introducer,
            VesselInCompany vesselInCompany,
            Voyage voyage,
            ActivityLocation offhireLocation,
            DateTime voucherDate,
            Currency voucherCurrency,
            //string pricingReferenceNumber,
            //OffHirePricingType pricingReferenceType,
            IOffhireDomainService offhireDomainService,
            IOffhireManagementSystemDomainService offhireManagementSystemDomainService,
            IVesselInCompanyDomainService vesselDomainService,
            IVoyageDomainService voyageDomainService,
            ICompanyDomainService companyDomainService,
            IActivityLocationDomainService activityLocationDomainService,
            ICurrencyDomainService currencyDomainService)
            : this()
        {
            //var pricingReference = new OffhirePricingReference() { Type = pricingReferenceType, Number = pricingReferenceNumber };
            this.validateCreation(
                referenceNumber,
                startDateTime,
                endDateTime,
                introducer,
                vesselInCompany,
                voyage,
                offhireLocation,
                voucherDate,
                voucherCurrency,
                //pricingReference,
                offhireDomainService,
                offhireManagementSystemDomainService,
                vesselDomainService,
                voyageDomainService,
                companyDomainService,
                activityLocationDomainService,
                currencyDomainService);

            this.ReferenceNumber = referenceNumber;
            this.StartDateTime = startDateTime;
            this.EndDateTime = endDateTime;
            this.IntroducerType = offhireDomainService.GetCharteringPartyType(vesselInCompany);
            this.Introducer = introducer;
            this.VesselInCompany = vesselInCompany;
            this.Voyage = voyage;
            this.OffhireLocation = offhireLocation;
            this.VoucherDate = voucherDate;
            this.VoucherCurrencyId = voucherCurrency.Id;
            this.VoucherCurrency = voucherCurrency;

            this.PricingReference = this.createPricingReference(introducer, vesselInCompany, this.IntroducerType, voyage, startDateTime, offhireDomainService);
        }
 public FuelReportCompanyFacadeService(
     ICompanyDomainService companyDomainService,
     IVesselInCompanyDomainService vesselDomainService,
     IFacadeMapper<Company, CompanyDto> companyMapper,
     IFacadeMapper<VesselInCompany, VesselDto> vesselMapper)
 {
     this.companyDomainService = companyDomainService;
     this.companyMapper = companyMapper;
     this.vesselDomainService = vesselDomainService;
     this.vesselMapper = vesselMapper;
 }
Beispiel #9
0
        internal Scrap(
            VesselInCompany vesselInCompany,
            Company secondParty,
            DateTime scrapDate,
            IScrapDomainService scrapDomainService,
            IVesselInCompanyDomainService vesselDomainService,
            ICompanyDomainService companyDomainService)
            : this()
        {
            this.validateCreation(vesselInCompany, secondParty, scrapDate, scrapDomainService, vesselDomainService, companyDomainService);

            this.ScrapDate = scrapDate;
            this.VesselInCompany = vesselInCompany;
            this.SecondParty = secondParty;

            this.ScrapDetails = new List<ScrapDetail>();
            this.ApproveWorkflows = new List<ScrapWorkflowLog>();
        }
        public OrderFacadeService(IOrderApplicationService orderAppService,
                                  ICompanyDomainService companyDomainService,
                                  IOrderToDtoMapper orderDtoMapper,
                                  IOrderItemToDtoMapper itemToDtoMapper,
                                  IOrderRepository orderRepository,
            IGoodUnitConvertorDomainService goodUnitConvertorDomainService,
            IMainUnitVlaueTomainUnitVlaueDtoMapper mainUnitVlaueTomainUnitVlaueDtoMapper
            , IUnitOfWorkScope unitOfWorkScope
)
        {
            _orderRepository = orderRepository;
            _goodUnitConvertorDomainService = goodUnitConvertorDomainService;
            _mainUnitVlaueTomainUnitVlaueDtoMapper = mainUnitVlaueTomainUnitVlaueDtoMapper;
            _unitOfWorkScope = unitOfWorkScope;
            _orderAppService = orderAppService;
            _companyDomainService = companyDomainService;
            _orderDtoMapper = orderDtoMapper;
            _itemToDtoMapper = itemToDtoMapper;
        }
        public InvoiceApplicationService(IInvoiceRepository invoiceRepository,
                                         IUnitOfWorkScope unitOfWorkScope,
            //  IGoodPartyAssignmentDomainService goodPartyAssignmentDomainService,
                                         //IUserRepository userRepository,
                                         IVesselInCompanyDomainService vesselDomainService,
                                         IGoodDomainService goodDomainService,
                                         IInvoiceFactory invoiceFactory,
                                         ICompanyDomainService companyDomainService,
                                         IInvoiceDomainService invoiceDomainService,
                                         IInvoiceItemDomainService invoiceItemDomainService,
                                         IEffectiveFactorDomainService effectiveFactorDomainService,
                                         ICompanyRepository companyRepository
            //,IApprovableDomainService approvableDomainService
                                         ,
                                         IOrderRepository orderRepository,
                                         IGoodRepository goodRepository,
                                         ICurrencyDomainService currencyDomainService,
                                         IInvoiceAdditionalPriceDomainService invoiceAdditionalPriceDomainService,
                                         IGoodUnitConvertorDomainService goodUnitConvertorDomainService, IBalanceDomainService balanceDomainService, IEntityConfigurator<Invoice> invoiceConfigurator)
        {
            this.invoiceRepository = invoiceRepository;
            this.vesselDomainService = vesselDomainService;
            this.goodDomainService = goodDomainService;
            this.invoiceFactory = invoiceFactory;
            this.unitOfWorkScope = unitOfWorkScope;
            this.companyDomainService = companyDomainService;
            this.invoiceDomainService = invoiceDomainService;

            this.invoiceItemDomainService = invoiceItemDomainService;
            this.effectiveFactorDomainService = effectiveFactorDomainService;
            this.companyRepository = companyRepository;
            this.orderRepository = orderRepository;
            this.goodRepository = goodRepository;
            this.currencyDomainService = currencyDomainService;
            this.invoiceAdditionalPriceDomainService = invoiceAdditionalPriceDomainService;
            this.goodUnitConvertorDomainService = goodUnitConvertorDomainService;
            this.balanceDomainService = balanceDomainService;
            this.invoiceConfigurator = invoiceConfigurator;

            // _approvableDomainService = approvableDomainService;
            //  _goodPartyAssignmentDomainService = goodPartyAssignmentDomainService;
        }
Beispiel #12
0
 public ScrapFactory(
     IEntityConfigurator<Scrap> scrapConfigurator,
     IWorkflowRepository workflowRepository,
     IScrapDomainService scrapDomainService,
     IVesselInCompanyDomainService vesselDomainService,
     ICompanyDomainService companyDomainService,
     ITankDomainService tankDomainService,
     ICurrencyDomainService currencyDomainService,
     IGoodDomainService goodDomainService,
     IGoodUnitDomainService goodUnitDomainService)
 {
     this.scrapConfigurator = scrapConfigurator;
     this.workflowRepository = workflowRepository;
     this.vesselDomainService = vesselDomainService;
     this.companyDomainService = companyDomainService;
     this.tankDomainService = tankDomainService;
     this.currencyDomainService = currencyDomainService;
     this.goodDomainService = goodDomainService;
     this.goodUnitDomainService = goodUnitDomainService;
     this.scrapDomainService = scrapDomainService;
 }
        public ScrapApplicationService(
            IScrapFactory scrapFactory,
            IScrapRepository scrapRepository,
            IUnitOfWorkScope unitOfWorkScope,
            IScrapDomainService scrapDomainService,
            IVesselInCompanyDomainService vesselDomianService,
            ICompanyDomainService companyDomainService,
            ICurrencyDomainService currencyDomainService,
            IGoodDomainService goodDomainService,
            IGoodUnitDomainService goodUnitDomainService,
            ITankDomainService tankDomainService)
        {
            this.scrapFactory = scrapFactory;
            this.scrapRepository = scrapRepository;
            this.unitOfWorkScope = unitOfWorkScope;

            this.scrapDomainService = scrapDomainService;
            this.vesselDomianService = vesselDomianService;
            this.companyDomainService = companyDomainService;
            this.currencyDomainService = currencyDomainService;
            this.goodDomainService = goodDomainService;
            this.goodUnitDomainService = goodUnitDomainService;
            this.tankDomainService = tankDomainService;
        }
Beispiel #14
0
        //================================================================================
        private void validateCompanyExistance(Company secondParty, ICompanyDomainService companyDomainService)
        {
            Company fetchedCompany = companyDomainService.Get(secondParty.Id);

            if (fetchedCompany == null)
            {
                throw new ObjectNotFound("Company Not Found");
            }
        }
Beispiel #15
0
        //================================================================================
        private void validateCompanyExistance(Company introducer, ICompanyDomainService companyDomainService)
        {
            if (introducer == null)
                throw new BusinessRuleException("", "The Offhire Registrar Company must be selected.");

            if (companyDomainService.Get(introducer.Id) == null)
            {
                throw new ObjectNotFound("Company Not Found");
            }
        }
Beispiel #16
0
        //================================================================================
        private void validateCreation(
            long referenceNumber,
            DateTime startDateTime,
            DateTime endDateTime,
            Company introducer,
            VesselInCompany vesselInCompany,
            Voyage voyage,
            ActivityLocation offhireLocation,
            DateTime voucherDate,
            Currency voucherCurrency,
            //OffhirePricingReference pricingReference,
            IOffhireDomainService offhireDomainService,
            IOffhireManagementSystemDomainService offhireManagementSystemDomainService,
            IVesselInCompanyDomainService vesselDomainService,
            IVoyageDomainService voyageDomainService,
            ICompanyDomainService companyDomainService,
            IActivityLocationDomainService activityLocationDomainService,
            ICurrencyDomainService currencyDomainService)
        {
            this.validateCompanyExistance(introducer, companyDomainService);

            this.validateOffhireReference(referenceNumber, introducer, offhireManagementSystemDomainService);

            this.validateOffhireUniquenessInFuelManagementDomain(referenceNumber, introducer, offhireDomainService);

            this.validateCurrency(voucherCurrency, currencyDomainService);
            this.validateVoucherDate(voucherDate);

            this.validateVesselExistance(vesselInCompany, vesselDomainService);
            this.validateVesselInCompanyExistance(vesselInCompany, introducer, companyDomainService);

            this.validateVoyageExistance(voyage, voyageDomainService);
            this.validateVoyageInVesselOfCompanyExistance(voyage, vesselInCompany);
            this.validateOffhireDurationInVoyage(startDateTime, endDateTime, voyage);

            this.validateActivityLocation(offhireLocation, activityLocationDomainService);

            CharteringPartyType charteringPartyType = offhireDomainService.GetCharteringPartyType(vesselInCompany);

            var offhirePricingType = offhireDomainService.GetPricingType(introducer, vesselInCompany, startDateTime);

            this.validateOffhirePricingType(introducer, vesselInCompany, voyage, startDateTime, charteringPartyType, offhirePricingType,
                offhireDomainService);
        }
Beispiel #17
0
 public EmployeeController(IEmployeeDomainService employeeDomainService, ICompanyDomainService companyDomainService)
 {
     this.employeeDomainService = employeeDomainService;
     this.companyDomainService  = companyDomainService;
 }
Beispiel #18
0
        //================================================================================
        private void validateVesselInCompanyExistance(DomainObjects.VesselInCompany vesselInCompany, Company introducer, ICompanyDomainService companyDomainService)
        {
            var vessels = companyDomainService.GetCompanyVessels(introducer.Id);

            if (vessels.Count(v => v.Id == vesselInCompany.Id) != 1)
                throw new BusinessRuleException("", "The vessel is not assigned to company.");
        }
Beispiel #19
0
 public CompanyController(ICompanyDomainService companyDomainService)
 {
     this.companyDomainService = companyDomainService;
 }
 public CompanyApplicationService(ICompanyDomainService companyService, IMapper mapper)
 {
     _companyService = companyService;
     _mapper         = mapper;
 }
Beispiel #21
0
 public CompanyApplicationService(ICompanyDomainService companyDomainService)
 => _companyDomainService = companyDomainService;
Beispiel #22
0
 public LitigationApplicationService(ILitigationDomainService litigationDomainService, ICompanyDomainService companyDomainService)
 {
     _litigationDomainService = litigationDomainService;
     _companyDomainService    = companyDomainService;
 }
Beispiel #23
0
        //================================================================================
        private void validateUpdate(
            VesselInCompany vesselInCompany, Company secondParty, DateTime scrapDate,
            IScrapDomainService scrapDomainService,
            IVesselInCompanyDomainService vesselDomainService,
            ICompanyDomainService companyDomainService)
        {
            this.validateToBeOpen();

            this.validateCompanyExistance(secondParty, companyDomainService);

            this.validateVesselExistance(vesselInCompany, vesselDomainService);
            this.validateVesselOwnedState(vesselInCompany, vesselDomainService);

            this.validateScrapDateToBeAfterTheLastVesselActivity(scrapDate, vesselInCompany, vesselDomainService);

            this.validateToBeTheOnlyScrapForVessel(vesselInCompany, scrapDomainService);
        }
Beispiel #24
0
        //================================================================================
        public void Update(
            VesselInCompany vesselInCompany, Company secondParty, DateTime scrapDate,
            IScrapDomainService scrapDomainService,
            IVesselInCompanyDomainService vesselDomainService,
            ICompanyDomainService companyDomainService)
        {
            this.validateUpdate(vesselInCompany, secondParty, scrapDate, scrapDomainService, vesselDomainService, companyDomainService);

            this.VesselInCompany = vesselInCompany;
            this.SecondParty = secondParty;
            this.ScrapDate = scrapDate;
        }