diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Dto/EqpSpotInsRecordListOutput.cs b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EqpSpotInsRecordListOutput.cs new file mode 100644 index 00000000..f09d07ff --- /dev/null +++ b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EqpSpotInsRecordListOutput.cs @@ -0,0 +1,19 @@ +namespace Tnb.EquipMgr.Entities.Dto +{ + public class EqpSpotInsRecordListOutput + { + public string id { get; set; } + public string equip_id { get; set; } + public string equip_id_id { get; set; } + public string status { get; set; } + public string result { get; set; } + public string repeat_result { get; set; } + public string create_time { get; set; } + public string spot_record_date_time { get; set; } + public string repeat_user_id { get; set; } + public string repeat_user_id_id { get; set; } + public string spot_record_user_id{ get; set; } + public string spot_record_user_id_id { get; set; } + public string repeat_time { get; set; } + } +} \ No newline at end of file diff --git a/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs b/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs index ad2106a0..b149f9fe 100644 --- a/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs +++ b/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs @@ -2,16 +2,20 @@ using JNPF.Common.Core.Manager; using JNPF.Common.Dtos.VisualDev; using JNPF.Common.Enums; using JNPF.Common.Filter; +using JNPF.Common.Security; using JNPF.DependencyInjection; using JNPF.DynamicApiController; using JNPF.FriendlyException; using JNPF.Systems.Entitys.Permission; using JNPF.VisualDev; using JNPF.VisualDev.Entitys; +using JNPF.VisualDev.Entitys.Dto.VisualDevModelData; using JNPF.VisualDev.Interfaces; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using SqlSugar; +using Tnb.BasicData.Entities; +using Tnb.BasicData.Entities.Dto; using Tnb.EquipMgr.Entities; using Tnb.EquipMgr.Entities.Dto; using Tnb.EquipMgr.Interfaces; @@ -43,6 +47,46 @@ namespace Tnb.EquipMgr _runService = runService; _userManager = userManager; // OverideFuncs.UpdateAsync = ExecuteSpotIns; + OverideFuncs.GetListAsync = GetList; + } + + private async Task GetList(VisualDevModelListQueryInput input) + { + var db = _repository.AsSugarClient(); + Dictionary? queryJson = (input==null || string.IsNullOrEmpty(input.queryJson)) ? new Dictionary() : input.queryJson.ToObject>(); + string equioInfo = queryJson.ContainsKey("query_info") ? (queryJson["query_info"].ToString() ?? "") : ""; + string status = queryJson.ContainsKey("status") ? (queryJson["status"].ToString() ?? "") : ""; + var list = await db.Queryable((a, b, c,d) => new object[] + { + JoinType.Left, a.equip_id == b.id, + JoinType.Left, a.spot_record_user_id == c.Id, + JoinType.Left, a.repeat_user_id == d.Id, + }) + .WhereIF(!string.IsNullOrEmpty(status),(a,b,c)=>a.status==status) + .WhereIF(!string.IsNullOrEmpty(equioInfo),(a,b,c)=>b.code.Contains(equioInfo)|| b.name.Contains(equioInfo)) + .Select((a, b, c,d) => new EqpSpotInsRecordListOutput + { + id = a.id, + equip_id = b.code+"/"+b.name, + equip_id_id = a.equip_id, + status = a.status, + result = a.result=="1" ? "合格" : "不合格", + repeat_result = a.repeat_result=="1" ? "合格" : "不合格", + create_time = a.create_time==null ? "" : a.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"), + spot_record_date_time = a.spot_record_date_time==null ? "" : a.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"), + repeat_time = a.repeat_time==null ? "" : a.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"), + spot_record_user_id = c.RealName, + spot_record_user_id_id = a.spot_record_user_id, + repeat_user_id = d.RealName, + repeat_user_id_id = a.repeat_user_id, + }) + .Mapper(a => + { + a.status = a.status=="1" ? "待执行" : a.status=="2" ? "待复核" : "已完成"; + }) + .ToPagedListAsync((input?.currentPage ?? 1), (input?.pageSize ?? 50)); + + return PageResult.SqlSugarPageResult(list); } ///