Ejemplo n.º 1
0
        public async Task <ActionResult> GetProcessLogs()
        {
            _Connection.DatabaseConnection();
            var database = _Connection.GetDatabase();

            _Log.SetDatabase(database);
            List <LogModel> logs = _Log.GetProcessesLogs();

            return(await Task.Run(() => View("GetProcessLogs", logs)));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Confirm(string id)
        {
            if (id == null)
            {
                return(BadRequest());
            }

            _Connection.DatabaseConnection();
            _Metadata.SetDatabase(_Connection.GetDatabase());
            _Field.SetDatabase(_Connection.GetDatabase());
            _Properties.SetDatabase(_Connection.GetDatabase());
            _Log.SetDatabase(_Connection.GetDatabase());

            //Obter os ids dos campos anexos a um processo;
            List <string> fields = _Metadata.GetProcessFieldsID(id);

            foreach (var field in fields)
            {
                FieldModel fieldModel = _Field.GetField(field);
                //Obter os ids das propriedades de um campo pertencente a um processo;
                _Properties.DeleteProperties(fieldModel.Properties); //Apaga na base de dados as propriedades existentes num campo;
                _Field.DeleteField(field);                           //Apaga na base de dados os campos existentes num processo;
            }

            /*
             * -------------------------------------------------------------------------------------
             * Log section
             * -------------------------------------------------------------------------------------
             */
            MetadataModel metadataModel = _Metadata.GetMetadata(id);

            _KeyID.SetKey(); //Generates a log model object id (unique key)
            _Log.CreateProcessLog(_KeyID.GetKey(), id, metadataModel.Name, metadataModel.Version, "Delete");
            //--------------------------------------------------------------------------------------

            _Metadata.DeleteMetadata(id); //Apaga na base de dados o processo propriamente dito;

            return(await Task.Run(() => RedirectToAction("Read", "Metadata")));
        }