Commit 1c34189c36afa3ab0dcf69b1201ff2f6864ab6d8
1 parent
7d89becc
fix: 修复ExportOptimized接口排序字段错误
- 完善字段映射逻辑,使用字典统一管理前端字段名到数据库字段名的映射 - 修复'Unknown column id in order clause'错误 - 处理sort参数为空的情况,默认使用desc - 支持更多字段的排序映射(id, khmc, sjh, dah, xb, zcsj等)
Showing
1 changed file
with
21 additions
and
4 deletions
netcore/src/Modularity/Extend/NCC.Extend/LqKhxxService.cs
| @@ -603,9 +603,26 @@ namespace NCC.Extend.LqKhxx | @@ -603,9 +603,26 @@ namespace NCC.Extend.LqKhxx | ||
| 603 | // 构建查询条件 | 603 | // 构建查询条件 |
| 604 | var sidx = input.sidx == null ? "F_Id" : input.sidx; | 604 | var sidx = input.sidx == null ? "F_Id" : input.sidx; |
| 605 | // 将前端字段名映射到数据库字段名 | 605 | // 将前端字段名映射到数据库字段名 |
| 606 | - if (sidx == "id") sidx = "F_Id"; | ||
| 607 | - if (sidx == "khmc") sidx = "khmc"; | ||
| 608 | - if (sidx == "zcsj") sidx = "zcsj"; | 606 | + var fieldMapping = new Dictionary<string, string> |
| 607 | + { | ||
| 608 | + { "id", "F_Id" }, | ||
| 609 | + { "khmc", "khmc" }, | ||
| 610 | + { "sjh", "sjh" }, | ||
| 611 | + { "dah", "dah" }, | ||
| 612 | + { "xb", "xb" }, | ||
| 613 | + { "zcsj", "zcsj" }, | ||
| 614 | + { "khlx", "khlx" }, | ||
| 615 | + { "khjd", "khjd" }, | ||
| 616 | + { "khxf", "khxf" }, | ||
| 617 | + { "xfpc", "xfpc" }, | ||
| 618 | + { "yanglsr", "yanglsr" } | ||
| 619 | + }; | ||
| 620 | + if (fieldMapping.ContainsKey(sidx)) | ||
| 621 | + { | ||
| 622 | + sidx = fieldMapping[sidx]; | ||
| 623 | + } | ||
| 624 | + // 确保 sort 参数不为空 | ||
| 625 | + var sortOrder = string.IsNullOrEmpty(input.sort) ? "desc" : input.sort; | ||
| 609 | List<string> queryZcsj = input.zcsj != null ? input.zcsj.Split(',').ToObeject<List<string>>() : null; | 626 | List<string> queryZcsj = input.zcsj != null ? input.zcsj.Split(',').ToObeject<List<string>>() : null; |
| 610 | DateTime? startZcsj = queryZcsj != null ? Ext.GetDateTime(queryZcsj.First()) : null; | 627 | DateTime? startZcsj = queryZcsj != null ? Ext.GetDateTime(queryZcsj.First()) : null; |
| 611 | DateTime? endZcsj = queryZcsj != null ? Ext.GetDateTime(queryZcsj.Last()) : null; | 628 | DateTime? endZcsj = queryZcsj != null ? Ext.GetDateTime(queryZcsj.Last()) : null; |
| @@ -634,7 +651,7 @@ namespace NCC.Extend.LqKhxx | @@ -634,7 +651,7 @@ namespace NCC.Extend.LqKhxx | ||
| 634 | .WhereIF(queryYanglsr != null, p => p.Yanglsr >= new DateTime(startYanglsr.ToDate().Year, startYanglsr.ToDate().Month, startYanglsr.ToDate().Day, 0, 0, 0)) | 651 | .WhereIF(queryYanglsr != null, p => p.Yanglsr >= new DateTime(startYanglsr.ToDate().Year, startYanglsr.ToDate().Month, startYanglsr.ToDate().Day, 0, 0, 0)) |
| 635 | .WhereIF(queryYanglsr != null, p => p.Yanglsr <= new DateTime(endYanglsr.ToDate().Year, endYanglsr.ToDate().Month, endYanglsr.ToDate().Day, 23, 59, 59)) | 652 | .WhereIF(queryYanglsr != null, p => p.Yanglsr <= new DateTime(endYanglsr.ToDate().Year, endYanglsr.ToDate().Month, endYanglsr.ToDate().Day, 23, 59, 59)) |
| 636 | .Where(p => p.IsEffective == StatusEnum.有效.GetHashCode()) | 653 | .Where(p => p.IsEffective == StatusEnum.有效.GetHashCode()) |
| 637 | - .OrderBy(sidx + " " + input.sort) | 654 | + .OrderBy(sidx + " " + sortOrder) |
| 638 | .ToListAsync(); | 655 | .ToListAsync(); |
| 639 | 656 | ||
| 640 | if (customerList == null || !customerList.Any()) | 657 | if (customerList == null || !customerList.Any()) |