using IoTNode.DeviceServices.FBee; using IoT.Shared.Application.Models; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; using System; using System.ComponentModel.DataAnnotations; namespace IoTNode.Controllers { public class DoorController : BaseDeviceController { private readonly FBeeService _deviceService; public DoorController(IServiceProvider applicationServices, FBeeService deviceService) : base(applicationServices) { this._deviceService = deviceService; } [HttpGet, Route("/[controller]/[action]"), SwaggerOperation("开")] public ApiResponse Open([SwaggerParameter("设备编号"), Required] string number, [SwaggerParameter("密码"), Required] string password) { return this.AsyncAction(() => { var values = number.Split('-'); this._deviceService.X82OpenDoor(values[0], values[1], password, 0x01); }); } [HttpGet, Route("/[controller]/[action]"), SwaggerOperation("关")] public ApiResponse Close([SwaggerParameter("设备编号"), Required] string number, [SwaggerParameter("密码"), Required] string password) { return this.AsyncAction(() => { var values = number.Split('-'); this._deviceService.X82OpenDoor(values[0], values[1], password, 0x00); }); } } }