Пример #1
0
        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));
        }