/// <summary>
        /// Adds a complaint to an existing feed
        /// </summary>
        /// <param name="feedId"></param>
        /// <param name="complaint"></param>
        /// <returns></returns>
        public async Task <Response <ComplaintResponseDTO> > AddComplaint(string feedId, AddComplaintDTO complaint)
        {
            var response = new Response <ComplaintResponseDTO>();
            var feed     = await _feedRepo.GetById(feedId);

            //ends the process if the feed cannot be found
            if (feed == null)
            {
                response.Message = "Feed not found";
                response.Success = false;
                return(response);
            }

            //map values of the DTO to the actual object
            var newComplaint = ComplaintMapper.FromAddComplaintDTO(complaint);

            //updates the feedId in the categoryId property
            newComplaint.CategoryId = feedId;
            var result = await _complaintsRepo.Add(newComplaint);

            response.Success = result;

            response.Message = !response.Success ? "Error occured while updating your entry" : "Updated successfully";
            response.Data    = ComplaintMapper.ToComplaintResponseDTO(newComplaint);

            //returns the complaint added and the related field
            return(response);
        }
        /// <summary>
        /// Select an item from the data source
        /// </summary>
        /// <param name="criteria">Criteria for querying the data source</param>
        /// <returns>Retrieved Item</returns>
        public override Complaint Select(CommandCriteria criteria)
        {
            Complaint result = new Complaint();

            SR.Admittance admittance = this.GetItem(criteria);

            if (admittance != null)
            {
                if (admittance.Complaints.Count > 0)
                {
                    result = new ComplaintMapper().Map(admittance.Complaints.First());
                }
            }

            return(result);
        }
Beispiel #3
0
        private static void Bootstrap()
        {
            //initialize mappers
            ComplaintMapper.Initialize();
            RoleMapper.Initialize();
            FMSWebsiteMapper.Initialize();
            VendorMapper.Initialize();
            PriceListMapper.Initialize();
            FleetMapper.Initialize();
            PenaltyMapper.Initialize();
            RemarkMapper.Initialize();
            DocumentTypeMapper.Initialize();
            ReasonMapper.Initialize();
            LocationMapingMapper.Initialize();
            EpafMapper.Initialize();
            SettingMapper.Initialize();
            GroupCostCenterMapper.Initialize();
            HolidayCalenderMapper.Initialize();
            PenalltyLogicMapper.Initialize();
            FuelOdometerMapper.Initialize();
            DelegationMapper.Initialize();
            SalesVolumeMapper.Initialize();
            SysAccessMapper.Initialize();
            GsMapper.Initialize();
            CostObMapper.Initialize();
            CsfMapper.Initialize();
            CrfMapper.Initialize();
            CtfMapper.Initialize();
            CcfMapper.Initialize();
            CafMapper.Initialize();
            CarComplaintFormMapper.Initialize();
            WorkflowHistoryMapper.Initialize();
            ChangesLogMapper.Initialize();
            TemporaryMapper.Initialize();
            CtfExtendMapper.Initialize();
            ExecutiveSummaryMapper.Initialize();
            RptFuelMapper.Initialize();
            AutoGRMapper.Initialize();
            CfmIdleReportMapper.Initialize();
            VehicleOverallReportMapper.Initialize();
            RptPOMapper.Initialize();
            RptCCFMapper.Initialize();
            KpiMonitoringMapper.Initialize();

            // 1. Create a new Simple Injector container
            var container = new Container();

            // register unit of work / context by request
            // http://simpleinjector.codeplex.com/wikipage?title=ObjectLifestyleManagement#PerThread
            var webLifestyle = new WebRequestLifestyle();

            //container.Register<IUnitOfWork, SqlUnitOfWork>(webLifestyle);
            //container.Register<ILogger, Logger>();
            container.Register <IUnitOfWork, SqlUnitOfWork>(webLifestyle);
            container.Register <IComplaintCategoryBLL, ComplaintCategoryBLL>();
            container.Register <IVendorBLL, VendorBLL>();
            container.Register <IPriceListBLL, PriceListBLL>();
            container.Register <IEmployeeBLL, EmployeBLL>();
            container.Register <IPenaltyBLL, PenaltyBLL>();
            container.Register <IPageBLL, PageBLL>();
            container.Register <IFleetBLL, FleetBLL>();
            container.Register <IRemarkBLL, RemarkBLL>();
            container.Register <IDocumentTypeBLL, DocumentTypeBLL>();
            container.Register <IReasonBLL, ReasonBLL>();
            container.Register <ILocationMappingBLL, LocationMappingBLL>();
            container.Register <IVehicleSpectBLL, VehicleSpectBLL>();
            container.Register <IEpafBLL, EPAFBLL>();
            container.Register <ISettingBLL, SettingBLL>();
            container.Register <IGroupCostCenterBLL, GroupCostCenterBLL>();
            container.Register <IHolidayCalenderBLL, HolidayCalenderBLL>();
            container.Register <IPenaltyLogicBLL, PenaltyLogicBLL>();
            container.Register <IRoleBLL, RoleBLL>();
            container.Register <IFuelOdometerBLL, FuelOdometerBLL>();
            container.Register <IDelegationBLL, DelegationBLL>();
            container.Register <ISalesVolumeBLL, SalesVolumeBLL>();
            container.Register <ISysAccessBLL, SysAccessBLL>();
            container.Register <IGsBLL, GsBLL>();
            container.Register <ICostObBLL, CostObBLL>();
            container.Register <ITraCsfBLL, CsfBLL>();
            container.Register <ITraCtfBLL, CtfBLL>();
            container.Register <ITraCcfBLL, CcfBLL>();
            container.Register <ICarComplaintFormBLL, CarComplaintFormBLL>();
            container.Register <ITraCrfBLL, CrfBLL>();
            container.Register <ICafBLL, CafBLL>();
            container.Register <ITraTemporaryBLL, TemporaryBLL>();
            container.Register <ICtfExtendBLL, CtfExtendBLL>();
            container.Register <IExecutiveSummaryBLL, ExecutiveSummaryBLL>();
            container.Register <IRptFuelBLL, RptFuelBLL>();
            container.Register <IAutoGrBLL, AutoGrBLL>();
            container.Register <ICfmIdleReportBLL, CfmIdleReportBLL>();
            container.Register <IVehicleOverallReportBLL, VehicleOverallReportBLL>();
            container.Register <IRptPoBLL, RptPoBLL>();
            container.Register <IRptCcfBLL, RptCcfBLL>();
            container.Register <IKpiMonitoringBLL, KpiMonitoringBLL>();

            // 3. Optionally verify the container's configuration.
            container.Verify();

            // 4. Store the container for use by Page classes.
            _container = container;
        }
 public ComplaintCrud()
 {
     Mapper = new ComplaintMapper();
     Dao    = SqlDao.GetInstance();
 }