/// <summary> /// Modifica dei metadati di un ruolo /// </summary> /// <param name="ruolo"></param> /// <returns></returns> public EsitoOperazione ModificaRuolo(OrgRuolo ruolo) { EsitoOperazione ret = new EsitoOperazione(); string logMsg; // test sui campi obbligatori if (string.IsNullOrEmpty(ruolo.Codice) || string.IsNullOrEmpty(ruolo.Descrizione)) { ret.Codice = -1; logMsg = ERR_HEADER + "ModificaRuolo: dati insufficienti"; ret.Descrizione = logMsg; logger.Debug(logMsg); return(ret); } // il campo Codice corrisponde a: // (ETDOCS) DPA_CORR_GLOBALI.VAR_COD_RUBRICA varchar(128) // (OCS) try { CorteContentServices.GroupRequestType groupReq = new CorteContentServices.GroupRequestType(); groupReq.userCredentials = OCSServices.OCSUtils.getApplicationUserCredentials(); groupReq.group = new CorteContentServices.GroupType(); groupReq.group.name = ruolo.Codice; groupReq.group.description = ruolo.Descrizione; groupReq.group.users = new DocsPaDocumentale_OCS.CorteContentServices.UserType[0]; CorteContentServices.ResultType result = this.WsGroupInstance.ModifyGroup(groupReq); if (OCSUtils.isValidServiceResult(result)) { ret.Codice = 0; } else { logger.Debug(DEBUG_HEADER + "ModificaRuolo operazione con ERRORE su OCS: " + ret.Descrizione); ret.Codice = -1; ret.Descrizione = result.message.Replace("'", " "); } return(ret); } catch (Exception ex) { string st = ex.ToString(); logger.Debug(DEBUG_HEADER + "ModificaRuolo FALLITA, Exception=" + st); ret.Codice = -1; ret.Descrizione = ERR_HEADER + "ModificaRuolo"; return(ret); } }
/// <summary> /// Inserimento di un nuovo utente in amministrazione. L'utente verrà inserito in un gruppo che contiene tutti gli utenti DocsPA. /// il gruppo deve già esistere su OCS!!! /// </summary> /// <param name="utente"></param> /// <returns></returns> public EsitoOperazione InserisciUtente(OrgUtente utente) { //inserisce l'utente nel gruppo dei lettori DocsPA EsitoOperazione ret = new EsitoOperazione(); try { string codiceRuolo = OCSConfigurations.GetGroupUsers(); string codiceUtente = utente.CodiceRubrica; CorteContentServices.GroupRequestType groupReq = new CorteContentServices.GroupRequestType(); CorteContentServices.ResultType result; groupReq.userCredentials = OCSServices.OCSUtils.getApplicationUserCredentials(); groupReq.group = new CorteContentServices.GroupType(); groupReq.group.name = codiceRuolo; //bisogna specificare la descrizione perchè l'elemento non è facoltativo al momento groupReq.group.description = ""; groupReq.group.users = new CorteContentServices.UserType[1]; groupReq.group.users[0] = new CorteContentServices.UserType(); groupReq.group.users[0].userId = codiceUtente; result = this.WsGroupInstance.AddGroupUsers(groupReq); if (OCSUtils.isValidServiceResult(result)) { logger.Debug(DEBUG_HEADER + "Inserimento utente nel gruppo DocsPa: " + codiceRuolo + " completata con SUCCESSO"); ret.Codice = 0; } else { logger.Debug(DEBUG_HEADER + "Inserimento utente nel gruppo DocsPa: " + codiceRuolo + " operazione con ERRORE"); ret.Codice = -1; ret.Descrizione = "problema su OCS: " + result.message.Replace("'", " "); } return(ret); } catch (Exception ex) { String st = ex.ToString(); logger.Debug(DEBUG_HEADER + "InserisciUtenteInRuolo FALLITA, Exception=" + st); ret.Codice = -1; ret.Descrizione = ERR_HEADER + "InserisciUtenteInRuolo"; return(ret); } //throw new NotSupportedException("InserisciUtente: operazione non supportata in OCS"); }
/// <summary> /// Eliminazione di un utente da un ruolo /// </summary> /// <param name="idPeople"></param> /// <param name="idGruppo"></param> /// <returns></returns> public EsitoOperazione EliminaUtenteDaRuolo(string idPeople, string idGruppo) { EsitoOperazione ret = new EsitoOperazione(); try { string codiceRuolo = DocsPaServices.DocsPaQueryHelper.getCodiceRuoloFromIdGroup(idGruppo); string codiceUtente = DocsPaServices.DocsPaQueryHelper.getCodiceUtente(idPeople); CorteContentServices.GroupRequestType groupReq = new CorteContentServices.GroupRequestType(); CorteContentServices.ResultType result; groupReq.userCredentials = OCSServices.OCSUtils.getApplicationUserCredentials(); groupReq.group = new CorteContentServices.GroupType(); groupReq.group.name = codiceRuolo; //bisogna specificare la descrizione perchè l'elemento non è facoltativo al momento groupReq.group.description = ""; groupReq.group.users = new CorteContentServices.UserType[1]; groupReq.group.users[0] = new CorteContentServices.UserType(); groupReq.group.users[0].userId = codiceUtente; result = this.WsGroupInstance.RemoveGroupUsers(groupReq); if (OCSUtils.isValidServiceResult(result)) { logger.Debug(DEBUG_HEADER + "EliminaUtenteDaRuolo completata con SUCCESSO"); ret.Codice = 0; } else { logger.Debug(DEBUG_HEADER + "EliminaUtenteDaRuolo operazione con ERRORE su OCS: " + result.message); ret.Codice = -1; ret.Descrizione = "Errore in OCS: " + result.message.Replace("'", " "); } return(ret); } catch (Exception ex) { String st = ex.ToString(); logger.Debug(DEBUG_HEADER + "EliminaUtenteDaRuolo FALLITA, Exception=" + st); ret.Codice = -1; ret.Descrizione = ERR_HEADER + "EliminaUtenteDaRuolo"; return(ret); } }