Esempio n. 1
0
        public async Task <IActionResult> GetRow([FromRoute] int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var rawRow = await _context.Rows.FindAsync(id);

            if (rawRow == null)
            {
                return(NotFound());
            }

            var row = RowConverter.RowConvert(rawRow);

            if (row.Type == "MultiService")
            {
                foreach (var name in _context.Services.Where(u => u.RowId == row.Id).ToList())
                {
                    row.Names.Add(name.Name);
                }
            }

            return(Ok(row));
        }
Esempio n. 2
0
        public async Task <ActionResult <bool> > PutRow([FromBody] RowDto row)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }


            while (_context.Services.Any(u => u.RowId == row.Id))
            {
                _context.Services.Remove(await _context.Services.FirstOrDefaultAsync(u => u.RowId == row.Id));
                await _context.SaveChangesAsync();
            }
            _context.Update(RowConverter.RowConvert(row));

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RowExists(row.Id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(Ok(true));
        }
Esempio n. 3
0
        public async Task <ActionResult <List <RowDto> > > FromJson([FromBody] List <RowDto> rows)
        {
            int pos = 1;

            foreach (var row in rows)
            {
                row.Pos = pos;
                pos++;
                _context.Rows.Add(RowConverter.RowConvert(row));
            }

            await _context.SaveChangesAsync();

            return(Ok(rows));
        }
Esempio n. 4
0
        public List <RowDto> GetRows()
        {
            List <RowDto> result = RowConverter.RowConvert(_context.Rows.ToList());

            foreach (var row in result)
            {
                if (row.Type == "MultiService")
                {
                    foreach (var name in _context.Services.Where(u => u.RowId == row.Id).ToList())
                    {
                        row.Names.Add(name.Name);
                    }
                }
            }
            return(result);
        }
Esempio n. 5
0
        public List <RowDto> GetTable([FromRoute] string table)
        {
            List <RowDto> result = RowConverter.RowConvert(
                _context.Rows.Where(u => u.Table == table).ToList());

            foreach (var row in result)
            {
                if (row.Type == "MultiService")
                {
                    foreach (var name in _context.Services.Where(u => u.RowId == row.Id).ToList())
                    {
                        row.Names.Add(name.Name);
                    }
                }
            }
            result.Sort(new Services.PosComparer());
            return(result);
        }
Esempio n. 6
0
        public async Task <ActionResult <Row> > PostRow([FromBody] RowDto row)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            foreach (var r in _context.Rows.ToList())
            {
                if (r.Table == row.Table && r.Pos >= row.Pos)
                {
                    r.Pos++;
                }
            }
            _context.Rows.Add(RowConverter.RowConvert(row));
            await _context.SaveChangesAsync();

            return(Ok(row));
        }