public async Task <ResponseViewModel> CreateNew(MobilizationInputModel model)
        {
            var user = await _userManager.FindByIdAsync(_httpContextAccessor.HttpContext.User.GetLoggedInUserId <int>().ToString());

            var query = _plotService.AllPlots().FirstOrDefault(x => x.Id == model.PlotId);

            if (query == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_PLOT, ResponseErrorCodeStatus.INVALID_PLOT));
            }

            model.AppUserId = user.Id;

            if (!string.IsNullOrEmpty(model.Document))
            {
                var uploadResult = await

                                   BaseContentServer
                                   .Build(ContentServerTypeEnum.FIREBASE, _setting)
                                   .UploadDocumentAsync(FileDocument.Create(model.Document, "Mobilization", $"{user.GUID}", FileDocumentType.GetDocumentType(MIMETYPE.IMAGE)));

                if (uploadResult == null)
                {
                    return(Failed(ResponseMessageViewModel.ERROR_UPLOADING_FILE, ResponseErrorCodeStatus.ERROR_UPLOADING_FILE));
                }

                model.Document = uploadResult.Path;
            }

            var mappedResult = _mobilizationService.CreateNew(_mapper.Map <MobilizationInputModel, Mobilization>(model));

            var result = _mapper.Map <Mobilization, MobilizationViewModel>(mappedResult);

            return(Ok(result));
        }
示例#2
0
        public async Task <ResponseViewModel> CreateNew(WorkOrderInputModel workOrder)
        {
            AppUser currentUser = await _userManager.FindByIdAsync(_httpContextAccessor.HttpContext.User.GetLoggedInUserId <int>().ToString());

            //var uploadResult = await
            //    BaseContentServer
            //    .Build(ContentServerTypeEnum.FIREBASE, _settings)
            //    .UploadDocumentAsync(FileDocument.Create(workOrder.Document, $"WorkOrder", $"{currentUser.GUID}", FileDocumentType.GetDocumentType(MIMETYPE.IMAGE)));

            var plotResult = _plotService.AllPlots().FirstOrDefault(x => x.Id == workOrder.PlotId);

            if (plotResult == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_PLOT, ResponseErrorCodeStatus.INVALID_PLOT));
            }

            var workOrderType = _workOrderService.GetWorkOrderTypes().FirstOrDefault(x => x.Id == workOrder.WorkOrderTypeId);

            if (workOrderType == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_WORK_ORDER_TYPE, ResponseErrorCodeStatus.INVALID_WORK_ORDER_TYPE));
            }

            workOrder.AppUserId = currentUser.Id;

            // workOrder.Document = uploadResult.Path;

            var result = _workOrderService.CreateNew(_mapper.Map <WorkOrderInputModel, WorkOrder>(workOrder));

            return(Ok(_mapper.Map <WorkOrder, WorkOrderViewModel>(result)));
        }
示例#3
0
        /// <summary>
        /// Make Subscription
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <ResponseViewModel> MakeSubscription(SubscriptionInputModel model)
        {
            var plot = _plotService.AllPlots().FirstOrDefault(x => x.Id == model.PlotId);

            if (plot == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_PLOT, ResponseErrorCodeStatus.INVALID_PLOT));
            }

            var currentUser = await _userManager.FindByIdAsync(_httpContextAccessor.HttpContext.User.GetLoggedInUserId <int>().ToString());

            return(Ok(_mapper.Map <Subscription, SubscriptionViewModel>(_subscriptionService.Subscribe(currentUser.Id, currentUser.OrganizationTypeId ?? 1, model.PlotId))));
        }
示例#4
0
        public ResponseViewModel NewCalendar(CalendarInputModel calendar)
        {
            var events = _calendarService.CalendarEvents().FirstOrDefault(x => x.Id == calendar.EventTypeId);

            if (events == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_CALENDAR_EVENT, ResponseErrorCodeStatus.INVALID_CALENDAR_EVENT));
            }

            var plot = _plotService.AllPlots().FirstOrDefault(x => x.Id == calendar.PlotId);

            if (plot == null)
            {
                return(NotFound(ResponseMessageViewModel.INVALID_PLOT, ResponseErrorCodeStatus.INVALID_PLOT));
            }

            var mappedResult = _mapper.Map <CalendarInputModel, Calendar>(calendar);

            var result = _calendarService.NewCalendar(mappedResult);

            return(Ok(_mapper.Map <Calendar, CalendarViewModel>(result)));
        }
示例#5
0
 public IEnumerable <PlotViewModel> GetPlots()
 {
     return(_plotService.AllPlots().Select(_mapper.Map <Plot, PlotViewModel>));
 }