public static SO_CRD_Profile getObject( string sessionGuid_in, string ip_forLogPurposes_in, long idProfile_in, out int[] errors_out ) { SO_CRD_Profile _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions . . . if ( !_sessionuser.hasPermission( PermissionType.Profile__select ) ) { _errorlist.Add(ErrorType.profile__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_CRD_Profile.getObject( idProfile_in, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static void delObject( string sessionGuid_in, string ip_forLogPurposes_in, long idProfile_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check Permissions . . . if ( !_sessionuser.hasPermission( PermissionType.News__Profile__delete ) ) { _errorlist.Add(ErrorType.news__profile__lack_of_permissions_to_delete); errors_out = _errorlist.ToArray(); return; } #endregion #region check existence . . . SO_NWS_Profile _profile; if ( idProfile_in <= 0 || ( (_profile = DO_NWS_Profile.getObject( idProfile_in )) == null ) ) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion #region check Permissions . . . (more) if ( // is approved ( !_profile.IFUser__Approved_isNull || !_profile.Approved_date_isNull ) && // and no permission to approve !_sessionuser.hasPermission( PermissionType.News__Profile__approve ) ) { _errorlist.Add(ErrorType.news__profile__lack_of_permissions_to_delete_approved); errors_out = _errorlist.ToArray(); return; } #endregion #region check References . . . if ( (DO_NWS_ContentProfile.getCount_inRecord_byProfile( idProfile_in ) > 0) || (DO_CRD_ProfilePermission.getCount_inRecord_byProfile( idProfile_in ) > 0) || (DO_CRD_UserProfile.getCount_inRecord_byProfile( idProfile_in ) > 0) ) { _errorlist.Add(ErrorType.data__constraint_violation); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); DO_NWS_Profile.delObject( idProfile_in, _con ); DO_CRD_Profile.delObject( idProfile_in, _con ); _errorlist.Add(ErrorType.news__profile__successfully_deleted__WARNING); #region _con.Transaction.Commit(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Commit(); } #endregion } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.Log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static void updObject( string sessionGuid_in, string ip_forLogPurposes_in, SO_vNWS_Profile profile_in, out int[] errors_out ) { Guid _sessionguid; Sessionuser _sessionuser; #region check... List <int> _errorlist; if (!check( sessionGuid_in, ip_forLogPurposes_in, ref profile_in, out _sessionguid, out _sessionuser, out _errorlist )) { errors_out = _errorlist.ToArray(); return; } #endregion #region check existence . . . SO_NWS_Profile _nws_profile = DO_NWS_Profile.getObject(...); SO_NWS_Profile _nws_profile; if ( profile_in.IDProfile <= 0 || ( (_nws_profile = DO_NWS_Profile.getObject( profile_in.IDProfile )) == null ) ) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion #region _nws_profile.IFUser__Approved = ...; if ( _nws_profile.IFUser__Approved_isNull || _nws_profile.Approved_date_isNull ) { if (_sessionuser.hasPermission(PermissionType.News__Profile__approve)) { _nws_profile.Approved_date = DateTime.Now; _nws_profile.IFUser__Approved = _sessionuser.IDUser; } else { _nws_profile.Approved_date_isNull = true; _nws_profile.IFUser__Approved_isNull = true; } } #endregion #region SO_CRD_Profile _crd_profile = DO_CRD_Profile.getObject(_nws_profile.IFProfile); SO_CRD_Profile _crd_profile = DO_CRD_Profile.getObject( _nws_profile.IFProfile ); #endregion //// preserve, hence comment: //_crd_profile.IFApplication = profile_in.IDApplication; _crd_profile.Name = profile_in.Name; Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); DO_NWS_Profile.setObject( _nws_profile, true, _con ); DO_CRD_Profile.updObject( _crd_profile, false, // I did getObject prior, so no problem. BE CAREFULL in future updates! _con ); _errorlist.Add(ErrorType.news__profile__successfully_updated__WARNING); #region _con.Transaction.Commit(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Commit(); } #endregion } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.Log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static long insObject( string sessionGuid_in, string ip_forLogPurposes_in, SO_vNWS_Profile profile_in, out int[] errors_out ) { long _output = -1L; Guid _sessionguid; Sessionuser _sessionuser; #region check... List <int> _errorlist; if (!check( sessionGuid_in, ip_forLogPurposes_in, ref profile_in, out _sessionguid, out _sessionuser, out _errorlist )) { errors_out = _errorlist.ToArray(); return(_output); } #endregion #region SO_CRD_Profile _crd_profile = new SO_CRD_Profile(...); SO_CRD_Profile _crd_profile = new SO_CRD_Profile( -1L, profile_in.Name, //profile_in.IDApplication _sessionuser.IDApplication ); #endregion #region _crd_profile.IFApplication = ...; //if ( // (profile_in.IDApplication_isNull) // || // (profile_in.IDApplication <= 0) //) { // _crd_profile.IFApplication_isNull = true; //} else { // _crd_profile.IFApplication = profile_in.IDApplication; //} _crd_profile.IFApplication = _sessionuser.IDApplication; #endregion _crd_profile.Name = profile_in.Name; #region SO_NWS_Profile _nws_profile = new SO_NWS_Profile(...); SO_NWS_Profile _nws_profile = new SO_NWS_Profile( ); #endregion #region _nws_profile.IFUser__Approved = ...; if (_sessionuser.hasPermission(PermissionType.News__Profile__approve)) { _nws_profile.Approved_date = DateTime.Now; _nws_profile.IFUser__Approved = _sessionuser.IDUser; } else { //// ALREADY CHECKED!!! //if ( // !profile_in.Approved_date_isNull // || // !profile_in.IFUser__Approved_isNull //) { // _errorlist.Add(ErrorType.news__profile__lack_of_permissions_to_approve); // errors_out = _errorlist.ToArray(); // return _output; //} else { _nws_profile.Approved_date_isNull = true; _nws_profile.IFUser__Approved_isNull = true; //} } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); _output = DO_CRD_Profile.insObject( _crd_profile, true, _con ); _nws_profile.IFProfile = _output; DO_NWS_Profile.setObject( _nws_profile, true, _con ); _errorlist.Add(ErrorType.news__profile__successfully_created__WARNING); #region _con.Transaction.Commit(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Commit(); } #endregion } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.Log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); return(_output); }
public static SO_CRD_Profile[] getRecord_all( string sessionGuid_in, string ip_forLogPurposes_in, bool allProfiles_notJustApplication_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out ) { page_itemsCount_out = -1L; SO_CRD_Profile[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions... if ( !_sessionuser.hasPermission(PermissionType.Profile__select) ) { _errorlist.Add(ErrorType.profile__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_CRD_Profile.getRecord_all( (allProfiles_notJustApplication_in) ? null : (object)_sessionuser.IDApplication, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static void delObject( string sessionGuid_in, string ip_forLogPurposes_in, long idProfile_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( PermissionType.Profile__delete ) ) { _errorlist.Add(ErrorType.profile__lack_of_permissions_to_delete); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); #if MOD_WEB DO_NET_Profile__default.delObject( idProfile_in, _con ); #endif #if MOD_NEWS DO_NWS_Profile.delObject( idProfile_in, _con ); #endif DO_CRD_ProfileProfile.delRecord_byProfile( idProfile_in, _con ); DO_CRD_ProfilePermission.delRecord_byProfile( idProfile_in, _con ); DO_CRD_UserProfile.delRecord_byProfile( idProfile_in, _con ); DO_CRD_Profile.delObject( idProfile_in, _con ); _errorlist.Add(ErrorType.profile__successfully_deleted__WARNING); _con.Transaction.Commit(); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.Log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
private static void updobject( string sessionGuid_in, string ip_forLogPurposes_in, SO_CRD_Profile profile_in, bool updateObject_in, long[] idProfile_parent_in, // long[] idUser_in, long[] idPermission_in, out int[] errors_out ) { List <int> _errorlist; Sessionuser _sessionuser; // if (idProfile_parent_in == null) nothing is done on CRD_ProfileProfile // if (idProfile_parent_in != null) { // if (idProfile_parent_in.length == 0) all relations are deleted // if (idProfile_parent_in.length != 0) { // all relations are deleted // and new ones are set // } // } // SAME WITH idUser_in and idPermission_in #region check... if (!check( sessionGuid_in, ip_forLogPurposes_in, updateObject_in ? profile_in : null, out _sessionuser, out _errorlist )) { errors_out = _errorlist.ToArray(); return; } #endregion #region check existence... SO_CRD_Profile _profile = DO_CRD_Profile.getObject(profile_in.IDProfile); if (_profile == null) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion //profile_in.IFApplication = _profile.IFApplication; if ( (profile_in.IFApplication != _profile.IFApplication) || (_profile.IFApplication != _sessionuser.IDApplication) ) { _errorlist.Add(ErrorType.lack_of_permissions); errors_out = _errorlist.ToArray(); return; } Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { if ( (idProfile_parent_in != null) || // (idUser_in != null) // || (idPermission_in != null) ) { _con.Open(); _con.Transaction.Begin(); } DO_CRD_Profile.updObject( profile_in, true, _con ); if (idProfile_parent_in != null) { DO_CRD_ProfileProfile.delRecord_byProfile( profile_in.IDProfile, _con ); for (int i = 0; i < idProfile_parent_in.Length; i++) { DO_CRD_ProfileProfile.setObject( new SO_CRD_ProfileProfile( profile_in.IDProfile, idProfile_parent_in[i] ), true, _con ); } } // if (idUser_in != null) { // DO_CRD_UserProfile.delRecord_byProfile( // profile_in.IDProfile, // _con // ); // for (int i = 0; i < idUser_in.Length; i++) { // DO_CRD_UserProfile.setObject( // new SO_CRD_UserProfile( // idUser_in[i], // profile_in.IDProfile // ), // true, // _con // ); // } // } if (idPermission_in != null) { DO_CRD_ProfilePermission.delRecord_byProfile( profile_in.IDProfile, _con ); for (int i = 0; i < idPermission_in.Length; i++) { DO_CRD_ProfilePermission.setObject( new SO_CRD_ProfilePermission( profile_in.IDProfile, idPermission_in[i] ), true, _con ); } } #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.profile__successfully_updated__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static long insObject( string sessionGuid_in, string ip_forLogPurposes_in, SO_CRD_Profile profile_in, long[] idProfile_parent_in, // long[] idUser_in, long[] idPermission_in, out int[] errors_out ) { long _output = -1; List <int> _errorlist; Sessionuser _sessionuser; #region check... if (!check( sessionGuid_in, ip_forLogPurposes_in, profile_in, out _sessionuser, out _errorlist )) { errors_out = _errorlist.ToArray(); return(_output); } #endregion if (profile_in == null) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return(_output); } if (profile_in.IFApplication != _sessionuser.IDApplication) { _errorlist.Add(ErrorType.lack_of_permissions); errors_out = _errorlist.ToArray(); return(_output); } Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { if ( ( (idProfile_parent_in != null) && (idProfile_parent_in.Length > 0) ) || // ( // (idUser_in != null) // && // (idUser_in.Length > 0) // ) // || ( (idPermission_in != null) && (idPermission_in.Length > 0) ) ) { _con.Open(); _con.Transaction.Begin(); } _output = DO_CRD_Profile.insObject( profile_in, // if connection is open that means I'm doing operations on other tables // and I will need the identity seed _con.IsOpen, _con ); if (idProfile_parent_in != null) { for (int i = 0; i < idProfile_parent_in.Length; i++) { DO_CRD_ProfileProfile.setObject( new SO_CRD_ProfileProfile( _output, idProfile_parent_in[i] ), true, _con ); } } // if (idUser_in != null) { // for (int i = 0; i < idUser_in.Length; i++) { // DO_CRD_UserProfile.setObject( // new SO_CRD_UserProfile( // _output, // idUser_in[i] // ), // true, // _con // ); // } // } if (idPermission_in != null) { for (int i = 0; i < idPermission_in.Length; i++) { DO_CRD_ProfilePermission.setObject( new SO_CRD_ProfilePermission( _output, idPermission_in[i] ), true, _con ); } } #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.profile__successfully_created__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); return(_output); }