From 3de3fde888f0dcf5a1c1df6080e9c7425f45d971 Mon Sep 17 00:00:00 2001
From: cheche <717840555@qq.com>
Date: Tue, 5 Mar 2024 15:45:21 +0800
Subject: [PATCH] =?UTF-8?q?fix=20=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87?=
=?UTF-8?q?=E5=AF=B9=E5=BA=94=E8=90=A5=E4=B8=9A=E7=82=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/BusinessPlacesController.cs | 10 ++++++
.../Request/BusinessPlaceGetByCodeRequest.cs | 13 +++++++
.../Response/DeviceCodeNameDetail.cs | 6 ++++
.../Services/IBusinessPlaceShiftService.cs | 5 ++-
.../Implements/BusinessPlaceShiftService.cs | 7 +++-
.../Device/Response/DevicePageResponse.cs | 5 +++
.../Device/Response/PlaceCodeNameDetil.cs | 9 +++++
.../Services/Implements/DeviceService.cs | 34 +++++++++++++++++--
8 files changed, 85 insertions(+), 4 deletions(-)
create mode 100644 Src/Dlhis.Basic/BusinessPlace/Request/BusinessPlaceGetByCodeRequest.cs
create mode 100644 Src/Dlhis.Basic/BusinessPlace/Response/DeviceCodeNameDetail.cs
create mode 100644 Src/Dlhis.Basic/Device/Response/PlaceCodeNameDetil.cs
diff --git a/Src/Dlhis.Basic/BusinessPlace/Controllers/BusinessPlacesController.cs b/Src/Dlhis.Basic/BusinessPlace/Controllers/BusinessPlacesController.cs
index 63dd5b4b..557100dc 100644
--- a/Src/Dlhis.Basic/BusinessPlace/Controllers/BusinessPlacesController.cs
+++ b/Src/Dlhis.Basic/BusinessPlace/Controllers/BusinessPlacesController.cs
@@ -93,4 +93,14 @@ public class BusinessPlacesController : ControllerBase
{
return await _businessPlaceShiftService.GetShiftsByPlaceCustomCodeAsync(request.CustomCode);
}
+
+ ///
+ /// 根据营业点获取下面的设备
+ ///
+ ///
+ ///
+ public async Task GetDevicesByCode(BusinessPlaceGetByCodeRequest request)
+ {
+ return await _businessPlaceShiftService.GetDevicesByCode(request);
+ }
}
diff --git a/Src/Dlhis.Basic/BusinessPlace/Request/BusinessPlaceGetByCodeRequest.cs b/Src/Dlhis.Basic/BusinessPlace/Request/BusinessPlaceGetByCodeRequest.cs
new file mode 100644
index 00000000..7aaa6060
--- /dev/null
+++ b/Src/Dlhis.Basic/BusinessPlace/Request/BusinessPlaceGetByCodeRequest.cs
@@ -0,0 +1,13 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace Dlhis.Basic.BusinessPlace.Request
+{
+ public class BusinessPlaceGetByCodeRequest
+ {
+ ///
+ /// 营业点号
+ ///
+ [Required(ErrorMessage = "营业点号不能为空")]
+ public string Code { get; set; }
+ }
+}
diff --git a/Src/Dlhis.Basic/BusinessPlace/Response/DeviceCodeNameDetail.cs b/Src/Dlhis.Basic/BusinessPlace/Response/DeviceCodeNameDetail.cs
new file mode 100644
index 00000000..fb7d0426
--- /dev/null
+++ b/Src/Dlhis.Basic/BusinessPlace/Response/DeviceCodeNameDetail.cs
@@ -0,0 +1,6 @@
+namespace Dlhis.Basic.BusinessPlace.Response
+{
+ public class DeviceCodeNameDetail
+ {
+ }
+}
diff --git a/Src/Dlhis.Basic/BusinessShift/Services/IBusinessPlaceShiftService.cs b/Src/Dlhis.Basic/BusinessShift/Services/IBusinessPlaceShiftService.cs
index 1dc289da..70b32573 100644
--- a/Src/Dlhis.Basic/BusinessShift/Services/IBusinessPlaceShiftService.cs
+++ b/Src/Dlhis.Basic/BusinessShift/Services/IBusinessPlaceShiftService.cs
@@ -1,4 +1,5 @@
-using Dlhis.Basic.BusinessPlace.Response;
+using Dlhis.Basic.BusinessPlace.Request;
+using Dlhis.Basic.BusinessPlace.Response;
using Dlhis.Basic.BusinessShift.Request;
using Dlhis.Basic.BusinessShift.Response;
using Kurisu.Core.DataAccess.Dto;
@@ -16,4 +17,6 @@ public interface IBusinessPlaceShiftService : IScopeDependency
Task SaveMealShiftsAsync(List requests);
Task GetShiftsByPlaceCustomCodeAsync(string placeCustomCode);
+
+ Task GetDevicesByCode(BusinessPlaceGetByCodeRequest request);
}
diff --git a/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs b/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
index 84931863..ec61ffb4 100644
--- a/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
+++ b/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
@@ -1,4 +1,5 @@
-using Dlhis.Basic.BusinessPlace.Response;
+using Dlhis.Basic.BusinessPlace.Request;
+using Dlhis.Basic.BusinessPlace.Response;
using Dlhis.Basic.BusinessShift.Request;
using Dlhis.Basic.BusinessShift.Response;
using Dlhis.Entity.Basic.Entity;
@@ -188,6 +189,10 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
};
}
+ public async Task> GetDevicesByCode(BusinessPlaceGetByCodeRequest request)
+ {
+
+ }
//*********************************************** help methods ***************************************************//
diff --git a/Src/Dlhis.Basic/Device/Response/DevicePageResponse.cs b/Src/Dlhis.Basic/Device/Response/DevicePageResponse.cs
index d9d47179..9fe547c6 100644
--- a/Src/Dlhis.Basic/Device/Response/DevicePageResponse.cs
+++ b/Src/Dlhis.Basic/Device/Response/DevicePageResponse.cs
@@ -99,4 +99,9 @@ public class DevicePageResponse
/// 消费人次
///
public int UserCount { get; set; }
+
+ ///
+ /// 设备营业点
+ ///
+ public List detils { get; set; }
}
diff --git a/Src/Dlhis.Basic/Device/Response/PlaceCodeNameDetil.cs b/Src/Dlhis.Basic/Device/Response/PlaceCodeNameDetil.cs
new file mode 100644
index 00000000..9f449033
--- /dev/null
+++ b/Src/Dlhis.Basic/Device/Response/PlaceCodeNameDetil.cs
@@ -0,0 +1,9 @@
+namespace Dlhis.Basic.Device.Response
+{
+ public class PlaceCodeNameDetil
+ {
+ public string BusinessPlaceCode { get; set; }
+ public string BusinessPlaceName { get; set; }
+
+ }
+}
diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
index 568bd507..f17f71c2 100644
--- a/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
+++ b/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
@@ -37,7 +37,6 @@ public class DeviceService : IDeviceService
FuncsStr = d.Funcs.ToString(),
Brand = dt.Brand,
Type = d.Type,
-
}, true)
.ToPageListAsync(request);
@@ -59,6 +58,37 @@ public class DeviceService : IDeviceService
})
.ToListAsync();
+ var Registries = await _dbContext.Queryable()
+ .ToListAsync();
+ var BusinessPlaces = await _dbContext.Queryable()
+ .ToListAsync();
+
+ foreach (var res in page.Data)
+ {
+ var list = new List();
+ var regis = Registries.Where(x => x.DeviceUniqueNo == res.UniqueNo).ToList();
+ if (regis!=null && regis.Count>0)
+ {
+ foreach (var re in regis)
+ {
+ var place = BusinessPlaces.Where(x => x.Code == re.BusinessPlaceCode)
+ .FirstOrDefault();
+
+ if (place != null)
+ {
+ var detil = new PlaceCodeNameDetil
+ {
+ BusinessPlaceCode = re.BusinessPlaceCode.ToString(),
+ BusinessPlaceName = place.Name
+ };
+ list.Add(detil);
+ }
+
+ }
+ }
+ res.detils = list;
+
+ }
page.Data.ForEach(device =>
{
device.Amount = balanceRecords.Sum(x => x.Amount);
@@ -332,7 +362,7 @@ public class DeviceService : IDeviceService
{
var page = await _dbContext.Queryable()
.LeftJoin((d, dt) => d.TemplateCode == dt.Code)
- .Where(d => d.Type == DeviceTypeEnumType.Attendance && d.Enable)
+ .Where(x => x.Type == DeviceTypeEnumType.Attendance || (x.Type == DeviceTypeEnumType.Door && x.AsAttendance))
.Select((d, dt) => new DevicePageResponse
{
FuncsStr = d.Funcs.ToString(),