fix 营业点配置设备位置移动
This commit is contained in:
@@ -19,4 +19,6 @@ public interface IBusinessPlaceShiftService : IScopeDependency
|
||||
Task<BusinessPlaceWithShiftResponse> GetShiftsByPlaceCustomCodeAsync(string placeCustomCode);
|
||||
|
||||
Task<Pagination<DeviceCodeNameDetail>> GetDevicesByCode(BusinessPlaceGetByCodeRequest request);
|
||||
|
||||
Task DispositionDeviceAsync(DispositionDeviceRequest request);
|
||||
}
|
||||
|
||||
@@ -232,6 +232,39 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
|
||||
return pagination;
|
||||
}
|
||||
|
||||
|
||||
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 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).First();
|
||||
device.ThrowIfNull($"{no}:设备不存在");
|
||||
}
|
||||
}
|
||||
|
||||
var regiss = await _dbContext.Queryable<DeviceRegistryEntity>()
|
||||
.Where(x => request.UniqueNos.Contains(x.DeviceUniqueNo))
|
||||
.ToListAsync();
|
||||
|
||||
var list = new List<DeviceRegistryEntity>();
|
||||
|
||||
foreach (var regis in regiss)
|
||||
{
|
||||
regis.BusinessPlaceCode = place.Code;
|
||||
regis.BusinessPlaceCustomCode = place.CustomCode;
|
||||
list.Add(regis);
|
||||
}
|
||||
await _dbContext.UpdateAsync(list);
|
||||
}
|
||||
|
||||
//*********************************************** help methods ***************************************************//
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user