public long AddStorageProviderType(StorageProviderTypeObject storageProviderType)
        {
            try
            {
                if (storageProviderType == null)
                {
                    return(-2);
                }

                var storageProviderTypeEntity = ModelMapper.Map <StorageProviderTypeObject, StorageProviderType>(storageProviderType);
                if (storageProviderTypeEntity == null || string.IsNullOrEmpty(storageProviderTypeEntity.Name))
                {
                    return(-2);
                }

                using (var db = new ImportPermitEntities())
                {
                    if (db.StorageProviderTypes.Count(m => m.Name.ToLower() == storageProviderType.Name.ToLower() && m.Name.ToLower() == storageProviderType.Name.ToLower()) > 0)
                    {
                        return(-3);
                    }
                    var returnStatus = db.StorageProviderTypes.Add(storageProviderTypeEntity);
                    db.SaveChanges();

                    var requirements = new List <StorageProviderRequirementObject>();
                    if (storageProviderType.StorageProviderRequirementObjects != null)
                    {
                        requirements = storageProviderType.StorageProviderRequirementObjects.ToList();
                    }

                    if (requirements.Any())
                    {
                        requirements.ToList().ForEach(k =>
                        {
                            if (db.StorageProviderRequirements.Count(m => m.StorageProviderTypeId == storageProviderType.Id && m.DocumentTypeId == k.DocumentTypeId) < 1)
                            {
                                k.StorageProviderTypeId          = returnStatus.Id;
                                var storageProviderTypeReqEntity = ModelMapper.Map <StorageProviderRequirementObject, StorageProviderRequirement>(k);
                                if (storageProviderTypeReqEntity != null && storageProviderTypeReqEntity.DocumentTypeId > 0 && storageProviderTypeReqEntity.StorageProviderTypeId > 0)
                                {
                                    db.StorageProviderRequirements.Add(storageProviderTypeReqEntity);
                                    db.SaveChanges();
                                }
                            }
                        });
                    }

                    return(returnStatus.Id);
                }
            }
            catch (Exception ex)
            {
                ErrorLogger.LoggError(ex.StackTrace, ex.Source, ex.Message);
                return(0);
            }
        }
Esempio n. 2
0
        public ActionResult EditStorageProviderType(StorageProviderTypeObject storageProviderType)
        {
            var gVal = new GenericValidator();

            try
            {
                var stat = ValidateStorageProviderType(storageProviderType);

                if (stat.Code < 1)
                {
                    return(Json(gVal, JsonRequestBehavior.AllowGet));
                }

                if (Session["_storageProviderType"] == null)
                {
                    gVal.Code  = -1;
                    gVal.Error = "Session has timed out.";
                    return(Json(gVal, JsonRequestBehavior.AllowGet));
                }

                var oldstorageProviderType = Session["_storageProviderType"] as StorageProviderTypeObject;

                if (oldstorageProviderType == null)
                {
                    gVal.Code  = -1;
                    gVal.Error = "Session has timed out.";
                    return(Json(gVal, JsonRequestBehavior.AllowGet));
                }
                oldstorageProviderType.Name = storageProviderType.Name.Trim();
                var newReq = new List <StorageProviderRequirementObject>();
                if (storageProviderType.StorageProviderRequirementObjects != null)
                {
                    newReq = storageProviderType.StorageProviderRequirementObjects.ToList();
                }
                var docStatus = new StorageProviderTypeServices().UpdateStorageProviderType(oldstorageProviderType, newReq);

                if (docStatus < 1)
                {
                    gVal.Code  = -1;
                    gVal.Error = docStatus == -3 ? "Storage Provider Type  already exists." : "Storage Provider Type  information could not be updated. Please try again later";
                    return(Json(gVal, JsonRequestBehavior.AllowGet));
                }

                gVal.Code  = oldstorageProviderType.Id;
                gVal.Error = "Storage Provider Type  information was successfully updated";
                return(Json(gVal, JsonRequestBehavior.AllowGet));
            }
            catch (Exception)
            {
                gVal.Code  = -1;
                gVal.Error = "Storage Provider Type  information could not be updated. Please try again later";
                return(Json(gVal, JsonRequestBehavior.AllowGet));
            }
        }
 public long UpdateStorageProviderType(StorageProviderTypeObject storageProviderType, List <StorageProviderRequirementObject> newRequirements)
 {
     try
     {
         return(_storageProviderTypeManager.UpdateStorageProviderType(storageProviderType, newRequirements));
     }
     catch (Exception ex)
     {
         ErrorLogger.LoggError(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
 public long AddStorageProviderType(StorageProviderTypeObject storageProviderType)
 {
     try
     {
         return(_storageProviderTypeManager.AddStorageProviderType(storageProviderType));
     }
     catch (Exception ex)
     {
         ErrorLogger.LoggError(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
Esempio n. 5
0
        public ActionResult AddStorageProviderType(StorageProviderTypeObject storageProviderType)
        {
            var gVal = new GenericValidator();

            try
            {
                var importerInfo = GetLoggedOnUserInfo();
                if (importerInfo.Id < 1)
                {
                    gVal.Error = "Your session has timed out";
                    gVal.Code  = -1;
                    return(Json(gVal, JsonRequestBehavior.AllowGet));
                }

                var validationResult = ValidateStorageProviderType(storageProviderType);

                if (validationResult.Code == 1)
                {
                    return(Json(validationResult, JsonRequestBehavior.AllowGet));
                }

                var appStatus = new StorageProviderTypeServices().AddStorageProviderType(storageProviderType);
                if (appStatus < 1)
                {
                    validationResult.Code  = -1;
                    validationResult.Error = appStatus == -2 ? "StorageProviderType upload failed. Please try again." : "The StorageProviderType  Information already exists";
                    return(Json(validationResult, JsonRequestBehavior.AllowGet));
                }

                gVal.Code  = appStatus;
                gVal.Error = "StorageProviderType  was successfully added.";
                return(Json(gVal, JsonRequestBehavior.AllowGet));
            }
            catch (Exception)
            {
                gVal.Error = "StorageProviderType  processing failed. Please try again later";
                gVal.Code  = -1;
                return(Json(gVal, JsonRequestBehavior.AllowGet));
            }
        }
Esempio n. 6
0
        private GenericValidator ValidateStorageProviderType(StorageProviderTypeObject storageProviderType)
        {
            var gVal = new GenericValidator();

            try
            {
                if (string.IsNullOrEmpty(storageProviderType.Name))
                {
                    gVal.Code  = -1;
                    gVal.Error = "Please select Storage Provider Type.";
                    return(gVal);
                }

                gVal.Code = 5;
                return(gVal);
            }
            catch (Exception)
            {
                gVal.Code  = -1;
                gVal.Error = "Storage Provider Type  Validation failed. Please provide all required fields and try again.";
                return(gVal);
            }
        }
        public long UpdateStorageProviderType(StorageProviderTypeObject storageProviderType, List <StorageProviderRequirementObject> newReqs)
        {
            try
            {
                if (storageProviderType == null)
                {
                    return(-2);
                }

                var storageProviderTypeEntity = ModelMapper.Map <StorageProviderTypeObject, StorageProviderType>(storageProviderType);
                if (storageProviderTypeEntity == null || storageProviderTypeEntity.Id < 1)
                {
                    return(-2);
                }

                using (var db = new ImportPermitEntities())
                {
                    if (db.StorageProviderTypes.Count(m => m.Name.ToLower() == storageProviderType.Name.ToLower() && m.Name.ToLower() == storageProviderType.Name.ToLower() && m.Id != storageProviderType.Id) > 0)
                    {
                        return(-3);
                    }

                    db.StorageProviderTypes.Attach(storageProviderTypeEntity);
                    db.Entry(storageProviderTypeEntity).State = EntityState.Modified;
                    db.SaveChanges();

                    var oldReqs = new List <StorageProviderRequirementObject>();
                    if (storageProviderType.StorageProviderRequirementObjects != null)
                    {
                        oldReqs = storageProviderType.StorageProviderRequirementObjects.ToList();
                    }

                    var newRequirements = new List <StorageProviderRequirementObject>();
                    if (newReqs != null)
                    {
                        newRequirements = newReqs;
                    }

                    if (newRequirements.Any())
                    {
                        if (oldReqs.Any())
                        {
                            newRequirements.ForEach(k =>
                            {
                                if (!oldReqs.Exists(n => n.DocumentTypeId == k.DocumentTypeId))
                                {
                                    if (
                                        db.StorageProviderRequirements.Count(
                                            m => m.StorageProviderTypeId == storageProviderType.Id && m.DocumentTypeId == k.DocumentTypeId) <
                                        1)
                                    {
                                        k.StorageProviderTypeId          = storageProviderTypeEntity.Id;
                                        var storageProviderTypeReqEntity =
                                            ModelMapper.Map <StorageProviderRequirementObject, StorageProviderRequirement>(k);
                                        if (storageProviderTypeReqEntity != null && storageProviderTypeReqEntity.DocumentTypeId > 0 &&
                                            storageProviderTypeReqEntity.StorageProviderTypeId > 0)
                                        {
                                            db.StorageProviderRequirements.Add(storageProviderTypeReqEntity);
                                            db.SaveChanges();
                                        }
                                    }
                                }
                            });
                        }

                        else
                        {
                            newRequirements.ForEach(k =>
                            {
                                if (db.StorageProviderRequirements.Count(m => m.StorageProviderTypeId == storageProviderType.Id && m.DocumentTypeId == k.DocumentTypeId) < 1)
                                {
                                    k.StorageProviderTypeId          = storageProviderTypeEntity.Id;
                                    var storageProviderTypeReqEntity = ModelMapper.Map <StorageProviderRequirementObject, StorageProviderRequirement>(k);
                                    if (storageProviderTypeReqEntity != null && storageProviderTypeReqEntity.DocumentTypeId > 0 && storageProviderTypeReqEntity.StorageProviderTypeId > 0)
                                    {
                                        db.StorageProviderRequirements.Add(storageProviderTypeReqEntity);
                                        db.SaveChanges();
                                    }
                                }
                            });
                        }
                    }
                    else
                    {
                        if (oldReqs.Any())
                        {
                            oldReqs.ForEach(c =>
                            {
                                if (!newRequirements.Exists(n => n.DocumentTypeId == c.DocumentTypeId))
                                {
                                    var reqsToRemove =
                                        db.StorageProviderRequirements.Where(
                                            m =>
                                            m.DocumentTypeId == c.DocumentTypeId &&
                                            m.StorageProviderTypeId == storageProviderTypeEntity.Id).ToList();
                                    if (reqsToRemove.Any())
                                    {
                                        var item = reqsToRemove[0];
                                        db.StorageProviderRequirements.Remove(item);
                                        db.SaveChanges();
                                    }
                                }
                            });
                        }
                    }
                    return(storageProviderType.Id);
                }
            }
            catch (Exception ex)
            {
                ErrorLogger.LoggError(ex.StackTrace, ex.Source, ex.Message);
                return(0);
            }
        }