StableVersion4.3/HL_FristAidPlatform_DataBase/Service/T_Service_FirstAid_DriverHa...

57 lines
2.6 KiB
C#
Raw Permalink Normal View History

2024-03-11 09:47:34 +08:00
using HL_FristAidPlatform_Help;
using HL_FristAidPlatform_Help.Model;
using HL_FristAidPlatform_IDataBase;
using HL_FristAidPlatform_Models;
using SqlSugar;
using System;
namespace HL_FristAidPlatform_DataBase
{
public class T_Service_FirstAid_DriverHandoverDB : BaseDB, IT_Service_FirstAid_DriverHandover
{
public SqlSugarClient db = GetClient();
/// <summary>
/// 司机交接记录
/// </summary>
/// <param name="guid"></param>
/// <param name="name"></param>
/// <param name="time1"></param>
/// <param name="time2"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
public TableModel<DriverHandoverListModel> GetDriverHandoverList(string guid, string name, string time1, string time2, int pageIndex, int pageSize)
{
int total = 0;
var data = db.Queryable<T_Service_FirstAid_DriverHandover, T_Service_FirstAid_AlarmTaskInfo, T_Service_FirstAid_AlarmInfo, T_Base_Ambulance, T_SYS_User>
((a, b, c, d, e) => new JoinQueryInfos(
JoinType.Left, a.AlarmTaskGUID == b.GUID,
JoinType.Left, b.AlarmGuid == c.GUID,
JoinType.Left, b.VehicleGUID == d.GUID,
JoinType.Left, a.DriverGUID == e.GUID
))
.Where((a, b, c, d, e) => c.HospitalGuid == guid || c.CallHospitalGuid == guid)
.WhereIF(!SqlFunc.IsNullOrEmpty(name), (a, b, c, d, e) => e.FullName.Contains(name))
.WhereIF(!SqlFunc.IsNullOrEmpty(time1), (a, b, c, d, e) => a.HandoverTime >= Convert.ToDateTime(time1))
.WhereIF(!SqlFunc.IsNullOrEmpty(time2), (a, b, c, d, e) => a.HandoverTime <= Convert.ToDateTime(time2).AddDays(1))
.OrderBy((a, b, c, d, e) => a.HandoverTime, OrderByType.Desc)
.Select((a, b, c, d, e) => new DriverHandoverListModel()
{
Name = e.FullName,
DrvingTime = Convert.ToDateTime(b.DrivingTime).ToString("yyyy-MM-dd HH:mm:ss"),
HandoverTime = a.HandoverTime.ToString("yyyy-MM-dd HH:mm:ss"),
PateNumber = d.PlateNumber
}).ToPageList(pageIndex, pageSize, ref total);
TableModel<DriverHandoverListModel> t = new TableModel<DriverHandoverListModel>();
t.Code = 0;
t.PageCount = data.Count;
t.TotalNumber = total;
t.Data = data;
t.Msg = "成功";
return t;
}
}
}