Esempio n. 1
0
        public ActionResult GetCustomers()
        {
            var data = new MobileResponseModel();

            try
            {
                var items  = GenericFactory.Business.GetCustomersList();
                var result = new List <CustomerViewModel>();
                result.AddRange(items.Select(c => new CustomerViewModel
                {
                    Id               = c.Id.ToString(),
                    Name             = c.Name,
                    HospitalName     = c.CustomerBranches.FirstOrDefault().CustomerBranchName,
                    CustomerTypeName = c.CustomerType.CustomerTypeName
                }));
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        public MobileResponseModel Get([FromUri] long eventCustomerId)
        {
            var model = new MobileResponseModel();

            _logger.Info("Chaperone Form (Get) EventCustomerId : " + eventCustomerId);
            try
            {
                var data = _chaperoneService.GetChaperoneFormModel(eventCustomerId);

                model.IsSuccess  = true;
                model.StatusCode = 200;
                model.Data       = data;

                return(model);
            }
            catch (Exception ex)
            {
                _logger.Error(string.Format("Error occurred while getting chaperone form data Message:{0} \\n Stack Trace:{1}", ex.Message, ex.StackTrace));

                model.IsSuccess  = false;
                model.Message    = ex.Message.ToString();
                model.StatusCode = 500;
                model.Data       = null;

                return(model);
            }
        }
Esempio n. 3
0
        public ActionResult GetFabricType()
        {
            var data = new MobileResponseModel();

            try
            {
                var materials = GenericFactory.Business.GetMaterials();
                var result    = new List <MaterialViewModel>();
                result.AddRange(materials.Select(m => new MaterialViewModel
                {
                    Id           = m.Id.ToString(),
                    MaterialName = m.Name
                }));
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 4
0
        public MobileResponseModel FetchCustomerForEvent([FromUri] long eventId)
        {
            MobileResponseModel eventCustomerListModel;

            try
            {
                var data = _eventCustomerBriefListService.GetPatientsByEventyId(eventId);

                eventCustomerListModel = new MobileResponseModel
                {
                    IsSuccess  = true,
                    Data       = data,
                    StatusCode = 200
                };
            }
            catch (Exception exception)
            {
                _logger.Error(string.Format("while FetchCustomerForEvent Message:{0} \\n Stack Trace:{1}", exception.Message, exception.StackTrace));

                eventCustomerListModel = new MobileResponseModel
                {
                    IsSuccess  = false,
                    Message    = exception.Message,
                    StatusCode = 500,
                    Data       = null
                };
            }

            return(eventCustomerListModel);
        }
        public MobileResponseModel Get([FromUri] long eventCustomerId)
        {
            MobileResponseModel physicianRecordRequestSignature;

            _logger.Info("Physician Record Request (Get) EventCustomerId : " + eventCustomerId);

            try
            {
                var data = _physicianRecordRequestService.GetPhysicianRecordRequestSignature(eventCustomerId);

                physicianRecordRequestSignature = new MobileResponseModel
                {
                    IsSuccess  = true,
                    Data       = data,
                    StatusCode = 200
                };
            }
            catch (Exception exception)
            {
                _logger.Error(string.Format("while physician Record Request Signature Message:{0} \\n Stack Trace:{1}", exception.Message, exception.StackTrace));

                physicianRecordRequestSignature = new MobileResponseModel
                {
                    IsSuccess  = false,
                    Message    = exception.Message,
                    StatusCode = 500,
                    Data       = null
                };
            }

            return(physicianRecordRequestSignature);
        }
Esempio n. 6
0
        public MobileResponseModel UpdateCheckInCheckOutTime(CustomerCheckInCheckOutTimeModel model)
        {
            var result = new MobileResponseModel {
                IsSuccess = false
            };

            try
            {
                var isUpdated = _eventCustomerBriefListService.UpdateCheckinCheckOutTime(model.EventCustomerId, model.AppointmentId, model.CheckInTime, model.CheckOutTime);
                if (isUpdated)
                {
                    result.IsSuccess = true;
                }
                else
                {
                    result.IsSuccess = false;
                    result.Message   = "Checkin/Checkout time update failed.";
                }
            }
            catch (Exception exception)
            {
                _logger.Error(string.Format("While Updating Checkin/Checkout Time Message: {0} \n Stack Trace {1}", exception.Message, exception.StackTrace));
                result.IsSuccess = false;
                result.Message   = exception.Message;
            }
            return(result);
        }
Esempio n. 7
0
        public ActionResult AddNewHistory(MobileHistoryViewModel model)
        {
            var data    = new MobileResponseModel();
            var history = new MobileHistoryViewModel
            {
                Id            = Guid.NewGuid().ToString(),
                DocumentId    = model.DocumentId,
                HistoryTypeId = 1,
                UserId        = model.UserId,
                Text          = model.Text
            }.ToEntity();

            try
            {
                GenericFactory.Business.AddHistory(history);
                data.Datas = new
                {
                    Id = history.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 8
0
        public ActionResult GetContact(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var contacts = GenericFactory.Business.GetContactByCustomerId(id);
                var result   = new List <ContactViewModel>();
                result.AddRange(contacts.Select(c => new ContactViewModel
                {
                    Id     = c.Id.ToString(),
                    Name   = c.Name,
                    Phone  = c.Phone,
                    Email  = c.Email,
                    Fax    = c.Fax,
                    Mobile = c.Mobile
                }));
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 9
0
        public ActionResult AddOrUpdateDelivery(DeliveryViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var document = GenericFactory.Business.GetDocument(model.Id);
                document.DocumentDeliveries.FirstOrDefault().Address1 = model.DeliveryAddress;
                this.UpdateDocument(document, document.FileNumber);

                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 10
0
        public ActionResult GetAllCommentByDocumentId(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var comments = GenericFactory.Business.GetHistoryByType(id, 2);
                var result   = comments.OrderByDescending(o => o.CreatedDate).Select(i => new MobileHistoryViewModel
                {
                    Id            = i.Id.ToString(),
                    Text          = i.Text,
                    DocumentId    = i.DocumentId.ToString(),
                    HistoryTypeId = i.HistoryTypeId.Value,
                    UserId        = i.UserId,
                    DisplayName   = i.AspNetUser.DisplayName,
                    CreatedDate   = i.CreatedDate.ToString("dd/MM/yyyy HH:mm:ss")
                });
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 11
0
        public ActionResult UpdateLocation(LocationTrackingViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                GenericFactory.Business.UpdateLocation(new LocationTracking
                {
                    Id        = Guid.NewGuid(),
                    UserId    = model.UserId,
                    Latitude  = Decimal.Parse(model.Location.Lat),
                    Longitude = decimal.Parse(model.Location.Long),
                    TimeStamp = DateTime.Now
                });
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 12
0
        public ActionResult AddOrUpdateCustomerAndContact(CustomerAndContactViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var document     = GenericFactory.Business.GetDocument(model.Id);
                var customerCode = GenericFactory.Business.GetCustomerById(model.CustomerId).CustomerCode;
                document.BiddingStatusId = model.IsDraft ? (int)WorkflowStatus.Draft : (int)WorkflowStatus.RequestForPrice;
                document.CustomerId      = new Guid(model.CustomerId);
                document.ContactId       = new Guid(model.ContactId);
                this.UpdateDocument(document, customerCode);

                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 13
0
        public MobileResponseModel Get([FromUri] long eventCustomerId)
        {
            MobileResponseModel participationConsentSignature;

            _logger.Info("Participation Consent (Get) EventCustomerId : " + eventCustomerId);

            try
            {
                var data = _participationConsentService.GetParticipationConsentSignature(eventCustomerId);
                participationConsentSignature = new MobileResponseModel
                {
                    IsSuccess  = true,
                    StatusCode = 200,
                    Data       = data
                };
                return(participationConsentSignature);
            }
            catch (Exception ex)
            {
                _logger.Error(string.Format("while Participation Consent Record Request Signature Message:{0} \\n Stack Trace:{1}", ex.Message, ex.StackTrace));
                participationConsentSignature = new MobileResponseModel
                {
                    IsSuccess  = false,
                    Message    = ex.Message.ToString(),
                    StatusCode = 500,
                    Data       = null
                };
                return(participationConsentSignature);
            }
        }
Esempio n. 14
0
        public ActionResult GetOptionsByProductId(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var products = GenericFactory.Business.GetOptionsByProductId(id);
                var result   = new List <ProductOptionViewModel>();
                result.AddRange(products.Select(o => new ProductOptionViewModel
                {
                    Id         = o.Id.ToString(),
                    OptionName = o.OptionName
                }));
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 15
0
        public ActionResult GetCategoriesProduct()
        {
            var data = new MobileResponseModel();

            try
            {
                var categories = GenericFactory.Business.GetProductCategories();
                var result     = new List <ProductCategoryViewModel>();
                result.AddRange(categories.Select(c => new ProductCategoryViewModel
                {
                    Id           = c.Id.ToString(),
                    CategoryName = c.CategoryName
                }));
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 16
0
        public ActionResult GetPatternImages(MobilePatternImageViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var patterns = GenericFactory.Business.GetPatternImageByCustomerId(model.CustomerId, model.PatternType);
                var result   = new List <PatternImageViewModel>();
                foreach (var p1 in patterns)
                {
                    var path = string.Format(@"{0}/FileUpload/{1}", AppSettingHelper.Domain,
                                             p1.PatternImagePath.Replace(@"\", @"/")
                                             .Split(new string[] { @"FileUpload" }, StringSplitOptions.None)[1]
                                             .Remove(0, 1));
                    result.Add(new PatternImageViewModel
                    {
                        Id          = p1.Id.ToString(),
                        PatternName = p1.PatternName,
                        ImagePath   = path
                    });
                }
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 17
0
        public ActionResult AddOrUpdateProductItem(ProductAndOptionViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                if (model.ItemId != null)
                {
                    GenericFactory.Business.MarkDeleteProductItemByItemId(model.ItemId);
                }
                var document = GenericFactory.Business.GetDocument(model.Id);
                document.DocumentProductItems.Add(model.ToViewModel());
                this.UpdateDocument(document, document.FileNumber);

                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 18
0
        public ActionResult GetWorkList(MobileWorkListSearchCriteria criteria)
        {
            var data     = new MobileResponseModel();
            int pageSize = AppSettingHelper.PageSize;

            try
            {
                if (!string.IsNullOrWhiteSpace(criteria.Keyword))
                {
                    criteria.Keyword = criteria.Keyword.Trim();
                }

                var items = GenericFactory.Business.GetDocumentsListBySearch(criteria.SearchBy, criteria.Keyword, criteria.UserId)
                            .OrderByDescending(i => i.CreatedDate)
                            .ToList();
                var allowedStatus = new List <int>();
                allowedStatus.Add((int)WorkflowStatus.Draft);
                allowedStatus.Add((int)WorkflowStatus.RequestForMoreInfoForSale);
                var documents  = items.Where(i => allowedStatus.Contains(i.DocumentStatusId.Value)).ToList();
                int totalCount = documents.Count;
                var result     = new List <DocumentListItemViewModel>();
                //random number
                Random rnd = new Random();
                foreach (var d in documents)
                {
                    var documentStatus    = (WorkflowStatus)d.DocumentStatusId;
                    var statusName        = documentStatus.ToWorkFlowStatusName();
                    var biddingStatus     = (d.BiddingStatusId.HasValue) ? (BiddingStatus)d.BiddingStatusId : BiddingStatus.undefined;
                    var biddingStatusName = biddingStatus.ToBiddingStatusName();
                    var numberOfComments  = rnd.Next(1, 5);
                    var document          = new DocumentListItemViewModel
                    {
                        Id                 = d.Id.ToString(),
                        CustomerType       = d.Customer.CustomerType.CustomerTypeName,
                        CustomerName       = d.Customer.Name,
                        DocumentCode       = d.FileNumber,
                        SaleUserName       = d.AspNetUser.DisplayName,
                        WorkflowStatus     = (int)d.DocumentStatusId,
                        WorkflowStatusName = statusName,
                        BiddingStatus      = (d.BiddingStatusId.HasValue) ? (int)d.BiddingStatusId : 0,
                        BiddingStatusName  = biddingStatusName,
                        IssueDate          = d.CreatedDate.Value.ToString("dd/MM/yyyy"),
                        ExpiryDate         = d.ExpiryDate.HasValue ? d.ExpiryDate.Value.ToString("dd/MM/yyyy") : "",
                        NumberOfComments   = numberOfComments
                    };
                    result.Add(document);
                }
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 19
0
        public ActionResult AddOrUpdateGeneralAndSaleInfo(GeneralAndSaleInfoViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var document     = GenericFactory.Business.GetDocument(model.Id);
                var customerCode = "";
                if (document != null)
                {
                    document.BiddingStatusId    = model.IsDraft ? (int)WorkflowStatus.Draft : (int)WorkflowStatus.RequestForPrice;
                    document.ConfirmedPriceDays = model.ConfirmPriceDays;
                    document.DeliveryDays       = model.DeliveryDays;
                    document.UserId             = model.SaleUserId;
                    this.UpdateDocument(document, customerCode);
                }
                else
                {
                    var _documentId = Guid.NewGuid();
                    document = new Document
                    {
                        Id = _documentId,
                        DocumentStatusId   = model.IsDraft ? (int)WorkflowStatus.Draft : (int)WorkflowStatus.RequestForPrice,
                        ConfirmedPriceDays = model.ConfirmPriceDays,
                        DeliveryDays       = model.DeliveryDays,
                        UserId             = model.SaleUserId,
                        CustomerId         = new Guid(AppSettingHelper.DummyCustomerId),
                        ContactId          = new Guid(AppSettingHelper.DummyContactId)
                    };
                    var delivery = new DocumentDelivery
                    {
                        Id         = Guid.NewGuid(),
                        DocumentId = _documentId,
                        Address1   = ""
                    };
                    document.DocumentDeliveries.Add(delivery);
                    this.CreateDocument(document, customerCode);
                }
                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 20
0
        public ActionResult CheckStock(MobileCalculateDateViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var productId        = model.ProductId;
                var productUnitId    = model.ProductUnitId;
                var materialId       = model.MaterialId;
                var amount           = model.Amount;
                var result           = new List <StockCheckViewModel>();
                var material         = GenericFactory.Business.GetMaterialUsageByProductId(productId, productUnitId).FirstOrDefault();
                var selectedMaterial = GenericFactory.Business.GetMaterialById(materialId);
                var stock            = GenericFactory.Business.GetStockCheck(AppSettingHelper.GetDefaultWarehouseId, materialId, material.MaterialUnitId.ToString()).FirstOrDefault();
                if (stock != null)
                {
                    var usageAmount = material.Amount.Value;
                    var totalAmount = stock.Amount.Value;
                    result.Add(new StockCheckViewModel
                    {
                        MaterialName    = string.Format("{0}", stock.Material.Name, stock.Material.MaterialCode),
                        MaterialInStock = totalAmount,
                        MaterialUsaged  = (usageAmount * amount),
                        MaterialInStockAfterWithdraw = (totalAmount - (usageAmount * amount))
                    });
                }
                else
                {
                    var usageAmount = material.Amount.Value;
                    var totalAmount = 0;
                    result.Add(new StockCheckViewModel
                    {
                        MaterialName    = selectedMaterial.Name,
                        MaterialInStock = 0,
                        MaterialUsaged  = (usageAmount * amount),
                        MaterialInStockAfterWithdraw = (totalAmount - (usageAmount * amount))
                    });
                }
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 21
0
        public ActionResult CopyProductItem(DocumentAndItemViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                var document = GenericFactory.Business.GetDocument(model.DocumentId);
                var item     = document.DocumentProductItems.First(i => i.Id.ToString() == model.ItemId);
                var copyItem = new DocumentProductItem
                {
                    Id                         = Guid.NewGuid(),
                    DocumentId                 = item.DocumentId,
                    ProductId                  = item.ProductId,
                    ProductOptionId            = item.ProductOptionId,
                    ProductUnitId              = item.ProductUnitId,
                    Amount                     = item.Amount,
                    DiscountAmount             = item.DiscountAmount,
                    DiscountPercentage         = item.DiscountPercentage,
                    FromWarehouseId            = item.FromWarehouseId,
                    IsDeleted                  = false,
                    PricePerUnit               = item.PricePerUnit,
                    ProductItemPrintOptionals  = item.ProductItemPrintOptionals,
                    ProductItemScreenOptionals = item.ProductItemScreenOptionals,
                    ProductItemSewOptionals    = item.ProductItemSewOptionals,
                    TotalPrice                 = item.TotalPrice,
                };
                document.DocumentProductItems.Add(copyItem);
                GenericFactory.Business.UpdateDocument(document);
                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 22
0
        public ActionResult GetDocumentDetail(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var document = GenericFactory.Business.GetDocument(id);
                var result   = document.ToViewModel();
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 23
0
        public ActionResult GetProductItemsByDocumentId(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var document = GenericFactory.Business.GetDocument(id);
                var result   = document.DocumentProductItems.Where(i => !i.IsDeleted).Select(i => i.ToViewModel()).ToList();
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 24
0
        public MobileResponseModel FetchEvent([FromUri] long EventId)
        {
            MobileResponseModel model;

            try
            {
                if (_sessionContext.UserSession == null || _sessionContext.UserSession.CurrentOrganizationRole == null)
                {
                    throw new Exception("Invalid User");
                }

                var filter = new EventSearchModelFilter();
                filter.EventId = EventId;

                filter.StaffId  = _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId;
                filter.FromDate = DateTime.Today;
                filter.ToDate   = DateTime.Today;
                var data = _eventService.GetEventBasicDetailsForStaff(filter) ?? null;

                model = new MobileResponseModel
                {
                    IsSuccess = true,
                    Data      = data
                };
            }
            catch (Exception exception)
            {
                _logger.Error(string.Format("While Fetch Events Message:{0} \\n Stack Trace:{1}", exception.Message, exception.StackTrace));

                model = new MobileResponseModel
                {
                    IsSuccess = false,
                    Message   = exception.Message,
                    Data      = null
                };
            }

            return(model);
        }
Esempio n. 25
0
        public ActionResult DeleteProductItem(DocumentAndItemViewModel model)
        {
            var data = new MobileResponseModel();

            try
            {
                GenericFactory.Business.MarkDeleteProductItemByItemId(model.ItemId);
                data.Datas = new
                {
                    Id = model.DocumentId.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 26
0
        public ActionResult AddOrUpdateDocument(FormCollection formCollection)
        {
            var data = new MobileResponseModel();

            try
            {
                var json  = formCollection["document"].ToString().Replace(@"\", "");
                var model = JsonConvert.DeserializeObject <DocumentViewModel>(json, new IsoDateTimeConverter {
                    DateTimeFormat = "dd/MM/yyyy"
                });
                var document = model.ToEntity();
                document.BiddingStatusId = model.IsDraft ? (int)WorkflowStatus.Draft : (int)WorkflowStatus.RequestForPrice;
                var customerCode = GenericFactory.Business.GetCustomerById(model.CustomerId).CustomerCode;
                if (string.IsNullOrEmpty(document.Id.ToString()))
                {
                    //Insert
                    this.CreateDocument(document, customerCode);
                }
                else
                {
                    //Update
                    this.UpdateDocument(document, customerCode);
                }
                data.Datas = new
                {
                    Id = document.Id.ToString()
                };
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 27
0
        public void DeleteDocument(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var document = GenericFactory.Business.GetDocument(id);
                if (document != null)
                {
                    document.IsDelete = true;
                    this.UpdateDocument(document, document.FileNumber);
                }
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            //return new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet);
        }
Esempio n. 28
0
        public ActionResult GetCustomerBranchByCustomerId(string id)
        {
            var data = new MobileResponseModel();

            try
            {
                var customerBranches = GenericFactory.Business.GetCustomerBranches(id);
                var result           = customerBranches.Select(i => new
                {
                    Id         = i.Id.ToString(),
                    BranchName = i.CustomerBranchName
                });
                data.Datas = result;
            }
            catch (Exception ex)
            {
                data.Status       = false;
                data.ErrorCode    = "001";
                data.ErrorMessage = ex.Message;
                data.MessageId    = "";
                data.TimeStamp    = "";
            }
            return(new JsonCamelCaseResult(data, JsonRequestBehavior.AllowGet));
        }
Esempio n. 29
0
        public MobileResponseModel Post([FromBody] UserLoginModel model)
        {
            var authenticationModel = new MobileResponseModel
            {
                IsSuccess = false
            };

            if (string.IsNullOrEmpty(model.Password) || string.IsNullOrEmpty(model.UserName) ||
                string.IsNullOrEmpty(model.DeviceKey))
            {
                authenticationModel.Message = "UserName or Password can not be empty";
                return(authenticationModel);
            }

            var isValid = _userLoginRepository.ValidateUser(model.UserName, model.Password);

            if (isValid)
            {
                try
                {
                    var userSession = _userLoginService.GetUserSessionModel(model.UserName);

                    if (userSession.CurrentOrganizationRole == null)
                    {
                        authenticationModel.Message = "Your default role has been removed. Please contact your administrator.";
                        return(authenticationModel);
                    }

                    if (!userSession.CurrentOrganizationRole.CheckRole((long)Roles.Technician) && !userSession.CurrentOrganizationRole.CheckRole((long)Roles.NursePractitioner))
                    {
                        authenticationModel.Message = "Your default role must be Technician or Nurse Practitioner. Please contact your administrator.";
                        return(authenticationModel);
                    }

                    int pinExpirationDays = 0;
                    Int32.TryParse(_configurationSettingRepository.GetConfigurationValue(ConfigurationSettingName.PinExpirationDays), out pinExpirationDays);

                    int daysBeforAlert = 0;

                    Int32.TryParse(_configurationSettingRepository.GetConfigurationValue(ConfigurationSettingName.AlertBeforePinExpirationInDays), out daysBeforAlert);
                    var pinExpireInDays = _technicianRepository.GetPinExpireInDays(userSession.CurrentOrganizationRole.OrganizationRoleUserId, pinExpirationDays);

                    if (pinExpireInDays <= daysBeforAlert)
                    {
                        pinExpireInDays = pinExpireInDays <= 0 ? 0 : pinExpireInDays;
                    }

                    _sessionContext.UserSession = userSession;

                    var loggedInUser = _userRepository.GetUser(userSession.UserId);
                    _sessionContext.LastLoggedInTime = loggedInUser.UserLogin.LastLogged.ToString();
                    _userLoginRepository.UpdateLoginStatus(_sessionContext.UserSession.UserId, true);

                    var sessionId = Guid.NewGuid().ToString();

                    var userLoginLog = SaveLoginInfo(userSession.UserId, sessionId, model.DeviceKey);

                    _sessionContext.UserSession.UserLoginLogId = userLoginLog.Id;

                    var technicianProfile = new Technician();

                    if (_sessionContext.UserSession.AvailableOrganizationRoles.Any(x => x.RoleId == (long)Roles.Technician))
                    {
                        var technicianOrgRoleUserId = _sessionContext.UserSession.AvailableOrganizationRoles.First(x => x.RoleId == (long)Roles.Technician).OrganizationRoleUserId;
                        technicianProfile = _technicianRepository.GetTechnician(technicianOrgRoleUserId);
                    }

                    authenticationModel = new MobileResponseModel
                    {
                        IsSuccess  = true,
                        Message    = "Successfully Logged In",
                        StatusCode = 200,
                        Data       = new AuthenticationModel
                        {
                            UserId = userSession.UserId,//Todo: need to check if OrgRoleUserID Can be Sent
                            Token  = (sessionId + "_" + userLoginLog.UserId).Encrypt(),
                            Name   = userSession.FullName,
                            Role   = userSession.CurrentOrganizationRole.RoleDisplayName,
                            Pin    = !string.IsNullOrWhiteSpace(technicianProfile.Pin) ? technicianProfile.Pin.Encrypt() : string.Empty,
                            ShowAlertBeforePinExpirationInDays = daysBeforAlert,
                            RemainingDays = pinExpireInDays,
                        }
                    };
                }
                catch (Exception exception)
                {
                    _logger.Error("while loging user" + exception.StackTrace);
                    authenticationModel.Message = "UserName or Password is not valid";

                    return(authenticationModel);
                }
            }
            else
            {
                _logger.Warn("Tried to access with invalid cridential");

                authenticationModel.Message = "UserName or Password is not valid";
                return(authenticationModel);
            }

            return(authenticationModel);
        }