public async Task <bool> UpdateStatusBadge(string badgeId, badgeStatus status, DateTime deactivationDate, string path, string user, string pass) { try { CultureInfo provider = CultureInfo.InvariantCulture; ManagementScope badgeScope = _dataConduITMgr.GetManagementScope(path, user, pass); ObjectQuery badgeSearcher = new ObjectQuery("SELECT * FROM Lnl_Badge WHERE ID = " + badgeId); ManagementObjectSearcher getBadge = new ManagementObjectSearcher(badgeScope, badgeSearcher); //redefine properties value foreach (ManagementObject queryObj in getBadge.Get()) { queryObj["STATUS"] = (int)status; string fechaDesactivacion = deactivationDate.ToString("yyyyMMdd") + "000000.000000-300"; if (status == badgeStatus.INACTIVA || status == badgeStatus.ACTIVO) { queryObj["DEACTIVATE"] = fechaDesactivacion; } PutOptions options = new PutOptions(); options.Type = PutType.UpdateOnly; queryObj.Put(options); } return(true); } catch (Exception ex) { throw new Exception(ex.Message); } }
public async Task <bool> ActualizarEstadoBadge(string badgeId, SetBadgeStatus_DTO nuevoEstado) { badgeStatus status = (badgeStatus)Enum.Parse(typeof(badgeStatus), nuevoEstado.estadoBadge.ToString()); if (nuevoEstado.fechaDesactivacion == null) { nuevoEstado.fechaDesactivacion = DateTime.Now; } return(await _badge_REP.UpdateStatusBadge(badgeId, status, (DateTime)nuevoEstado.fechaDesactivacion, _path, _user, _pass)); }