Пример #1
0
        public async Task <ActionResult <Coordinator> > UpdateCoordinator(
            long id, int seqid,
            [FromBody] CoordinatorRequest request)
        {
            var coordinator = await _context.Coordinators.FirstOrDefaultAsync(co =>
                                                                              co.StationId == id && co.SeqId == seqid);

            if (coordinator == null)
            {
                return(NotFound());
            }
            if (!string.IsNullOrWhiteSpace(request.Name))
            {
                coordinator.Name = request.Name;
            }
            if (!string.IsNullOrWhiteSpace(request.Address))
            {
                coordinator.Address = request.Address;
            }
            if (request.IPHost != null)
            {
                coordinator.IPHost = request.IPHost;
            }
            if (request.IPPort.HasValue)
            {
                coordinator.IPPort = request.IPPort;
            }
            if (request.Disabled.HasValue)
            {
                coordinator.Disabled = request.Disabled.Value;
            }
            await _context.SaveChangesAsync();

            return(coordinator);
        }
Пример #2
0
        public async Task <ActionResult <Coordinator> > CreateCoordinator(
            long id, int seqid,
            [FromBody] CoordinatorRequest request)
        {
            Coordinator coordinator = await _context.Coordinators.FirstOrDefaultAsync(co =>
                                                                                      co.StationId == id && co.SeqId == seqid);

            if (coordinator == null)
            {
                coordinator           = new Coordinator();
                coordinator.StationId = id;
                coordinator.SeqId     = seqid;
                coordinator.Name      = request.Name;
                coordinator.Address   = request.Address;
                coordinator.IPHost    = request.IPHost;
                coordinator.IPPort    = request.IPPort;
                coordinator.Disabled  = false;
                coordinator.CreatedAt = DateTime.Now;
                _context.Coordinators.Add(coordinator);
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(request.Name))
                {
                    coordinator.Name = request.Name;
                }
                if (!string.IsNullOrWhiteSpace(request.Address))
                {
                    coordinator.Address = request.Address;
                }
                if (request.IPHost != null)
                {
                    coordinator.IPHost = request.IPHost;
                }
                if (request.IPPort.HasValue)
                {
                    coordinator.IPPort = request.IPPort;
                }
                if (request.Disabled.HasValue)
                {
                    coordinator.Disabled = request.Disabled.Value;
                }
            }

            await _context.SaveChangesAsync();

            return(coordinator);
        }