fix 营业点保存设备

This commit is contained in:
2024-04-07 11:04:29 +08:00
parent 28e4cbf513
commit 456f6ed34e
3 changed files with 20 additions and 31 deletions

View File

@@ -228,34 +228,20 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
public async Task DispositionDeviceAsync(DispositionDeviceRequest request)
{
var places = await _dbContext.Queryable<BusinessPlaceEntity>().ToListAsync();
var place = places.Where(x => x.Code.ToString() == request.PlaceCode).First();
place.ThrowIfNull($"{request.PlaceCode}:该营业点不存在");
var place = await _dbContext.Queryable<BusinessPlaceEntity>().Where(x => x.Code == request.PlaceCode).SingleAsync();
place.ThrowIfNull("营业点不存在");
var devices = await _dbContext.Queryable<DeviceEntity>().ToListAsync();
if (request.UniqueNos != null && request.UniqueNos.Count > 0)
{
foreach (var no in request.UniqueNos)
{
var device = devices.Where(x => x.UniqueNo == no).FirstOrDefault();
device.ThrowIfNull($"{no}:设备不存在");
}
}
var regiss = await _dbContext.Queryable<DeviceRegistryEntity>()
var registries = await _dbContext.Queryable<DeviceRegistryEntity>()
.Where(x => request.UniqueNos.Contains(x.DeviceUniqueNo))
.ToListAsync();
var list = new List<DeviceRegistryEntity>();
foreach (var regis in regiss)
foreach (var item in registries)
{
regis.BusinessPlaceCode = place.Code;
regis.BusinessPlaceCustomCode = place.CustomCode;
list.Add(regis);
item.BusinessPlaceCode = request.PlaceCode;
item.BusinessPlaceCustomCode = place.CustomCode;
}
await _dbContext.UpdateAsync(list);
await _dbContext.UpdateAsync(registries);
}
//*********************************************** help methods ***************************************************//

View File

@@ -118,12 +118,12 @@ public class BusinessPlacesController : ControllerBase
}
/// <summary>
/// 营业点增加配置设备接口
/// 营业点增加配置设备
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("disposition")]
public async Task DispositionDeviceAsync([FromQuery] DispositionDeviceRequest request)
public async Task DispositionDeviceAsync(DispositionDeviceRequest request)
{
await _businessPlaceShiftService.DispositionDeviceAsync(request);
}

View File

@@ -1,9 +1,12 @@
namespace Dlhis.Basic.Places.Request
{
public class DispositionDeviceRequest
{
public string PlaceCode { get; set; }
using System.ComponentModel.DataAnnotations;
public List<string> UniqueNos { get; set; }
}
namespace Dlhis.Basic.Places.Request;
public class DispositionDeviceRequest
{
[Required]
public Guid PlaceCode { get; set; }
[MinLength(1)]
public List<string> UniqueNos { get; set; }
}