Example #1
0
 public ValidationResult SetOwnerLevelPermission(SEC_UserOwnerAccess model, out string status)
 {
     _ownerLevelPermissionDataService.SetOwnerLevelPermission(model, out status);
     if (status.Length > 0)
     {
         return(new ValidationResult(status, _localizationService.GetResource(status)));
     }
     return(ValidationResult.Success);
 }
Example #2
0
        public string SetOwnerLevelPermission(SEC_UserOwnerAccess model, out string errorNumber)
        {
            errorNumber = String.Empty;
            try
            {
                DatabaseProviderFactory factory = new DatabaseProviderFactory();
                SqlDatabase             db      = factory.CreateDefault() as SqlDatabase;
                //if (model.OwnerModel != null)
                //{
                DataTable OwnerDataTable = new DataTable();
                OwnerDataTable.Columns.Add("OwnerID");
                OwnerDataTable.Columns.Add("UserLevel");
                OwnerDataTable.Columns.Add("SupervisorLevel");
                OwnerDataTable.Columns.Add("UserOwnerAccessID");

                if (model.OwnerModel != null)
                {
                    foreach (var item in model.OwnerModel)
                    {
                        DataRow objDataRow = OwnerDataTable.NewRow();

                        objDataRow[0] = item.OwnerID;
                        objDataRow[1] = item.UserLevel;
                        objDataRow[2] = item.SupervisorLevel;
                        objDataRow[3] = item.UserOwnerAccessID;

                        OwnerDataTable.Rows.Add(objDataRow);
                    }
                }

                using (DbCommand dbCommandWrapper = db.GetStoredProcCommand("SetOwnerLevelPermission"))
                {
                    // Set parameters
                    db.AddInParameter(dbCommandWrapper, "@UserID", SqlDbType.NVarChar, model.UserID);
                    db.AddInParameter(dbCommandWrapper, "@EnableOwnerSecurity", SqlDbType.NVarChar, model.EnableOwnerSecurity);
                    db.AddInParameter(dbCommandWrapper, "@OwnerLevelAccessID", SqlDbType.NVarChar, model.OwnerLevelAccessID);
                    db.AddInParameter(dbCommandWrapper, "@OwnerID", SqlDbType.Structured, OwnerDataTable);

                    db.AddOutParameter(dbCommandWrapper, spStatusParam, SqlDbType.VarChar, 10);
                    // Execute SP.
                    db.ExecuteNonQuery(dbCommandWrapper);
                    // Getting output parameters and setting response details.
                    if (!db.GetParameterValue(dbCommandWrapper, spStatusParam).IsNullOrZero())
                    {
                        // Get the error number, if error occurred.
                        errorNumber = db.GetParameterValue(dbCommandWrapper, spStatusParam).PrefixErrorCode();
                    }
                }
                //}
            }
            catch (Exception ex)
            {
                errorNumber = "E404"; // Log ex.Message  Insert Log Table
            }
            return(errorNumber);
        }
Example #3
0
        public async Task <dynamic> SetDataLevelPermission(SEC_UserOwnerAccess model)
        {
            if (ModelState.IsValid)
            {
                action           = "add";
                model.SetBy      = UserID;
                model.ModifiedBy = model.SetBy;
                respStatus       = await Task.Run(() => _dataLevelPermissionService.SetDataLevelPermission(model, action, out outStatus));

                return(Json(new { Message = respStatus.Message, respStatus }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                var errors = ModelState.Values.SelectMany(v => v.Errors);
                respStatus = new ValidationResult("E404", _localizationService.GetResource("E404"));
            }
            return(Json(new { Message = respStatus.Message, respStatus }, JsonRequestBehavior.AllowGet));
        }
Example #4
0
        public async Task <dynamic> SetOwnerLevelPermission(SEC_UserOwnerAccess model)
        {
            if (ModelState.IsValid)
            {
                respStatus = await Task.Run(() => _OwnerLevelPermissionService.
                                            SetOwnerLevelPermission(model, out outStatus));

                List <UserWisePermittedOwner> userWisePermittedOwners = null;


                await Task.Run(() => _OwnerLevelPermissionService.GetUserWisePermittedOwnerList(
                                   model.UserID, UserID, model.OwnerLevelAccessID, out userWisePermittedOwners));

                return(Json(new { Message = respStatus.Message, respStatus, userWisePermittedOwners }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                var errors = ModelState.Values.SelectMany(v => v.Errors);
                respStatus = new ValidationResult("E404", _localizationService.GetResource("E404"));
            }
            return(Json(new { Message = respStatus.Message, respStatus }, JsonRequestBehavior.AllowGet));
        }
Example #5
0
        public string SetDataLevelPermission(SEC_UserOwnerAccess model, string action, out string errorNumber)
        {
            errorNumber = String.Empty;
            try
            {
                IFormatProvider         culture = new System.Globalization.CultureInfo("fr-FR", true);
                DatabaseProviderFactory factory = new DatabaseProviderFactory();
                SqlDatabase             db      = factory.CreateDefault() as SqlDatabase;

                DataTable docCategoryDataTable = new DataTable();
                docCategoryDataTable.Columns.Add("DocCategoryID");
                docCategoryDataTable.Columns.Add("AccessTimeLimit");
                docCategoryDataTable.Columns.Add("Remarks");

                DataTable docTypeDataTable = new DataTable();
                docTypeDataTable.Columns.Add("DocTypeID");
                docTypeDataTable.Columns.Add("AccessTimeLimit");
                docTypeDataTable.Columns.Add("Remarks");

                DataTable docPropertyDataTable = new DataTable();
                docPropertyDataTable.Columns.Add("DocPropertyID");
                docPropertyDataTable.Columns.Add("AccessTimeLimit");
                docPropertyDataTable.Columns.Add("Remarks");

                DataTable docPropIdentifyDataTable = new DataTable();
                docPropIdentifyDataTable.Columns.Add("DocPropIdentifyID");
                docPropIdentifyDataTable.Columns.Add("AccessTimeLimit");
                docPropIdentifyDataTable.Columns.Add("Remarks");
                docPropIdentifyDataTable.Columns.Add("MetaValue");

                if (model.DocCategoryModel != null)
                {
                    foreach (var item in model.DocCategoryModel)
                    {
                        DataRow objDataRow = docCategoryDataTable.NewRow();

                        objDataRow[0] = item.CategoryID;
                        if (item.CategoryTime != null)
                        {
                            objDataRow[1] = Convert.ToDateTime(item.CategoryTime).ToString("yyyy/MM/dd");//DateTime.Parse(, culture, System.Globalization.DateTimeStyles.AssumeLocal);
                        }
                        objDataRow[2] = item.CategoryRemarks;

                        docCategoryDataTable.Rows.Add(objDataRow);
                    }
                }
                else if (model.DocTypeModel != null)
                {
                    foreach (var item in model.DocTypeModel)
                    {
                        DataRow objDataRow = docTypeDataTable.NewRow();

                        objDataRow[0] = item.TypeID;
                        if (item.TypeTime != null)
                        {
                            objDataRow[1] = DateTime.Parse(item.TypeTime, culture,
                                                           System.Globalization.DateTimeStyles.AssumeLocal);
                        }
                        objDataRow[2] = item.TypeRemarks;

                        docTypeDataTable.Rows.Add(objDataRow);
                    }
                }
                else if (model.DocPropertyModel != null)
                {
                    foreach (var item in model.DocPropertyModel)
                    {
                        DataRow objDataRow = docPropertyDataTable.NewRow();

                        objDataRow[0] = item.PropertyID;
                        if (item.PropertyTime != null)
                        {
                            objDataRow[1] = DateTime.Parse(item.PropertyTime, culture,
                                                           System.Globalization.DateTimeStyles.AssumeLocal);
                        }
                        ;
                        objDataRow[2] = item.PropertyRemarks;

                        docPropertyDataTable.Rows.Add(objDataRow);
                    }
                }
                else if (model.DocPropIdentityModel != null)
                {
                    foreach (var item in model.DocPropIdentityModel)
                    {
                        DataRow objDataRow = docPropIdentifyDataTable.NewRow();

                        objDataRow[0] = item.PropIdentityID;
                        if (item.PropIdentityTime != null)
                        {
                            objDataRow[1] = DateTime.Parse(item.PropIdentityTime, culture, System.Globalization.DateTimeStyles.AssumeLocal);
                        }
                        ;
                        objDataRow[2] = item.PropIdentityRemarks;
                        objDataRow[3] = item.PropIdentityMetaValue;

                        docPropIdentifyDataTable.Rows.Add(objDataRow);
                    }
                }



                if (model.DataLevelAccess == "DocumentCategory")
                {
                    using (DbCommand dbCommandWrapper = db.GetStoredProcCommand("SetDocCategoryToDataLevelPermission"))
                    {
                        db.AddInParameter(dbCommandWrapper, "@UserID", SqlDbType.NVarChar, model.UserID);
                        db.AddInParameter(dbCommandWrapper, "@OwnerID", SqlDbType.NVarChar, model.OwnerID);
                        db.AddInParameter(dbCommandWrapper, "@UserOwnerAccessID", SqlDbType.NVarChar, model.UserOwnerAccessID);
                        db.AddInParameter(dbCommandWrapper, "@DataAccessLevel", SqlDbType.NVarChar, model.DataLevelAccess);
                        db.AddInParameter(dbCommandWrapper, "@Doc_Category", SqlDbType.Structured, docCategoryDataTable);
                        db.AddOutParameter(dbCommandWrapper, spStatusParam, SqlDbType.VarChar, 10);
                        db.ExecuteNonQuery(dbCommandWrapper);

                        if (!db.GetParameterValue(dbCommandWrapper, spStatusParam).IsNullOrZero())
                        {
                            errorNumber = db.GetParameterValue(dbCommandWrapper, spStatusParam).PrefixErrorCode();
                        }
                    }
                }
                else if (model.DataLevelAccess == "DocumentType")
                {
                    using (DbCommand dbCommandWrapper = db.GetStoredProcCommand("SetDocTypeToDataLevelPermission"))
                    {
                        db.AddInParameter(dbCommandWrapper, "@UserID", SqlDbType.NVarChar, model.UserID);
                        db.AddInParameter(dbCommandWrapper, "@OwnerID", SqlDbType.NVarChar, model.OwnerID);
                        db.AddInParameter(dbCommandWrapper, "@UserOwnerAccessID", SqlDbType.NVarChar, model.UserOwnerAccessID);
                        db.AddInParameter(dbCommandWrapper, "@DataAccessLevel", SqlDbType.NVarChar, model.DataLevelAccess);
                        db.AddInParameter(dbCommandWrapper, "@DocCategoryID", SqlDbType.NVarChar, model.DocCategoryID);

                        db.AddInParameter(dbCommandWrapper, "@Doc_Type", SqlDbType.Structured, docTypeDataTable);
                        db.AddOutParameter(dbCommandWrapper, spStatusParam, SqlDbType.VarChar, 10);
                        db.ExecuteNonQuery(dbCommandWrapper);

                        if (!db.GetParameterValue(dbCommandWrapper, spStatusParam).IsNullOrZero())
                        {
                            errorNumber = db.GetParameterValue(dbCommandWrapper, spStatusParam).PrefixErrorCode();
                        }
                    }
                }
                else if (model.DataLevelAccess == "DocumentProperty")
                {
                    using (DbCommand dbCommandWrapper = db.GetStoredProcCommand("SetDocPropertyToDataLevelPermission"))
                    {
                        db.AddInParameter(dbCommandWrapper, "@UserID", SqlDbType.NVarChar, model.UserID);
                        db.AddInParameter(dbCommandWrapper, "@OwnerID", SqlDbType.NVarChar, model.OwnerID);
                        db.AddInParameter(dbCommandWrapper, "@UserOwnerAccessID", SqlDbType.NVarChar, model.UserOwnerAccessID);
                        db.AddInParameter(dbCommandWrapper, "@DataAccessLevel", SqlDbType.NVarChar, model.DataLevelAccess);
                        db.AddInParameter(dbCommandWrapper, "@DocCategoryID", SqlDbType.NVarChar, model.DocCategoryID);
                        db.AddInParameter(dbCommandWrapper, "@DocTypeID", SqlDbType.NVarChar, model.DocTypeID);
                        db.AddInParameter(dbCommandWrapper, "@Doc_Property", SqlDbType.Structured, docPropertyDataTable);
                        db.AddOutParameter(dbCommandWrapper, spStatusParam, SqlDbType.VarChar, 10);

                        db.ExecuteNonQuery(dbCommandWrapper);

                        if (!db.GetParameterValue(dbCommandWrapper, spStatusParam).IsNullOrZero())
                        {
                            errorNumber = db.GetParameterValue(dbCommandWrapper, spStatusParam).PrefixErrorCode();
                        }
                    }
                }
                else if (model.DataLevelAccess == "DocumentPropertyValue")
                {
                    using (DbCommand dbCommandWrapper = db.GetStoredProcCommand("SetDocProppIdentifyToDataLevelPermission"))
                    {
                        db.AddInParameter(dbCommandWrapper, "@UserID", SqlDbType.NVarChar, model.UserID);
                        db.AddInParameter(dbCommandWrapper, "@OwnerID", SqlDbType.NVarChar, model.OwnerID);
                        db.AddInParameter(dbCommandWrapper, "@UserOwnerAccessID", SqlDbType.NVarChar, model.UserOwnerAccessID);
                        db.AddInParameter(dbCommandWrapper, "@DataAccessLevel", SqlDbType.NVarChar, model.DataLevelAccess);
                        db.AddInParameter(dbCommandWrapper, "@DocCategoryID", SqlDbType.NVarChar, model.DocCategoryID);
                        db.AddInParameter(dbCommandWrapper, "@DocTypeID", SqlDbType.NVarChar, model.DocTypeID);
                        db.AddInParameter(dbCommandWrapper, "@DocPropertyID", SqlDbType.NVarChar, model.DocPropertyID);


                        db.AddInParameter(dbCommandWrapper, "@Doc_PropIdentity", SqlDbType.Structured, docPropIdentifyDataTable);
                        db.AddOutParameter(dbCommandWrapper, spStatusParam, SqlDbType.VarChar, 10);

                        db.ExecuteNonQuery(dbCommandWrapper);

                        if (!db.GetParameterValue(dbCommandWrapper, spStatusParam).IsNullOrZero())
                        {
                            errorNumber = db.GetParameterValue(dbCommandWrapper, spStatusParam).PrefixErrorCode();
                        }
                    }
                }
            }


            catch (Exception ex)
            {
                errorNumber = "E404";
            }
            return(errorNumber);
        }