public async Task <ActionResult> Save(ConsumerServiceViewModel model)
        {
            if (User == null)
            {
                return(null);
            }
            ConsumerServicesManagement manage = new ConsumerServicesManagement(_context);

            if (model.ConsumerServiceId == null)
            {
                model.CreatedByUserId = CurrentUser?.UserId;
            }
            else
            {
                model.EditedByUserId = CurrentUser?.UserId;
            }
            var dbData = await manage.Save(model.GetModel());

            ConsumerServiceViewModel savedData = CustomMapper.MapEntity <ConsumerServiceViewModel>(dbData);

            if (!string.IsNullOrEmpty(model.FileData))
            {
                var savedFileInfo = manage.SaveConsumerEmployeeFile(CurrentUser, dbData.ConsumerServiceId, model.FileData, model.FileName, model.FileId);
                model.FileId   = savedFileInfo.fileId;
                model.FileName = savedFileInfo.fileName;
            }

            var returnObj = new { status = "ok", id = savedData.ConsumerServiceId, savedData.AddedByView, savedData.EditedByView, fileId = model.FileId, fileName = model.FileName };

            return(Json(returnObj, JsonRequestBehavior.AllowGet));
        }
        public async Task <ActionResult> Delete(Int32 serviceId)
        {
            if (User == null)
            {
                return(null);
            }

            ConsumerServicesManagement manage = new ConsumerServicesManagement(_context);

            if (!await manage.Delete(serviceId))
            {
                return(Json(new { status = "error", message = "You can't delete this record. Please contact to support team." }, JsonRequestBehavior.AllowGet));
            }
            return(Json(new { status = "ok" }, JsonRequestBehavior.AllowGet));
        }
        public async Task <ActionResult> GetTotalHours(ConsumerServiceViewModel model)
        {
            if (User == null)
            {
                return(null);
            }
            ConsumerServicesManagement manage = new ConsumerServicesManagement(_context);


            model.UsedHours = await manage.GetTotalHours(model.GetModel());

            var returnObj = new { status = "ok", model };

            return(Json(returnObj, JsonRequestBehavior.AllowGet));
        }
        public async Task <ActionResult> SendEmail(int serviceId, String email, string emailBody, String contactName)
        {
            if (User == null)
            {
                return(null);
            }
            ConsumerServicesManagement manage = new ConsumerServicesManagement(_context);
            var service = await manage.GetService(serviceId, true);

            var mappedData = CustomMapper.MapEntity <ConsumerServiceModel, ApprovedServiceBoundModel>(service);

            mappedData.ConsumerEmployeeList = CustomMapper.MapList <ConsumerEmployeeModel, ConsumerEmployeeModel>(service.ConsumerEmployeeList);
            mappedData.InnerEmailBody       = emailBody;
            List <Object> emailInputData = new List <object>()
            {
                mappedData
            };
            await EmailService.SendBoundEmail(email, contactName, "Approver Service Email", "apporved-service-email", emailInputData, User?.Identity?.Name);

            return(Json(new { status = "ok" }));
        }
Esempio n. 5
0
        public async Task <ActionResult> Get(String id)
        {
            if (User == null)
            {
                return(null);
            }

            if (String.IsNullOrEmpty(id))
            {
                return(null);
            }
            Int32 consumerId = Int32.Parse(id);
            ConsumerManagement                  manage               = new ConsumerManagement(_context);
            ConsumerPhonesManagement            managePhones         = new ConsumerPhonesManagement(_context);
            ConsumerEmployeeManagement          manageEmployees      = new ConsumerEmployeeManagement(_context);
            ConsumerServicesManagement          manageServices       = new ConsumerServicesManagement(_context);
            ConsumerEmployeeDocumentsManagement manageDocuments      = new ConsumerEmployeeDocumentsManagement(_context);
            ConsumerHabPlansManagement          manageHabPlans       = new ConsumerHabPlansManagement(_context);
            ConsumerHabReviewsManagement        manageHabReviews     = new ConsumerHabReviewsManagement(_context);
            ConsumerPrintDocumentsManagement    managePrintDocuments = new ConsumerPrintDocumentsManagement(_context);
            ConsumerCallLogsManagement          manageCallLogs       = new ConsumerCallLogsManagement(_context);
            ConsumerNotesManagement             manageNotes          = new ConsumerNotesManagement(_context);
            ConsumerNotificationsManagement     manageNotifications  = new ConsumerNotificationsManagement(_context);

            var consumer = await manage.GetConsumer(consumerId);

            if (consumer == null)
            {
                return(null);
            }
            var phones = await managePhones.GetPhones(consumerId);

            var employees = await manageEmployees.GetEmployees(consumerId);

            var services = await manageServices.GetServices(consumerId);

            var documents = await manageDocuments.GetDocuments(consumerId);

            var habPlans = await manageHabPlans.GetHabPlans(consumerId);

            var habReviews = await manageHabReviews.GetHabReviews(consumerId);

            var printDocuments = await managePrintDocuments.GetPrintDocuments(consumerId);

            var callLogs = await manageCallLogs.GetCallLogs(consumerId);

            var notes = await manageNotes.GetNotes(consumerId);

            var notifications = await manageNotifications.GetNotifications(consumerId);

            var uploadFiles             = FileDataService.GetConsumerFiles(_context, consumerId);
            ConsumerFullViewModel model = new ConsumerFullViewModel(consumer);

            model.SetPhones(phones);
            model.SetEmployees(employees);
            model.SetApprovedServices(services);
            model.SetDocuments(documents);
            model.SetHabPlans(habPlans);
            model.SetHabReviews(habReviews);
            model.SetPrintDocuments(printDocuments);
            model.SetCallLogs(callLogs);
            model.SetNotes(notes);
            model.SetNotifications(notifications);
            model.SetUploadFiles(uploadFiles);
            return(Json(model, JsonRequestBehavior.AllowGet));
        }