Browse Source

!1819 解决生成代码里导入功能的bug
Merge pull request !1819 from hwjmyz/v2-2025616

zuohuaijun 10 tháng trước cách đây
mục cha
commit
8a3fc1db54

+ 9 - 5
Admin.NET/Admin.NET.Web.Entry/wwwroot/template/Service.cs.vm

@@ -12,6 +12,7 @@ using Mapster;
 using SqlSugar;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using @(Model.NameSpace).Entity;
 namespace @(Model.NameSpace);
 
 /// <summary>
@@ -332,19 +333,21 @@ public partial class @(Model.ClassName)Service : IDynamicApiController, ITransie
                     @:
                     @:// 映射字典值
                     @:foreach(var item in pageItems) {
+                        @:System.Text.StringBuilder sbError = new System.Text.StringBuilder();
                         foreach (var column in dictTableField) {
-                        @:if (string.IsNullOrWhiteSpace(item.@(column.ExtendedPropertyName))) continue;
-                        @:item.@(column.PropertyName) = @(column.LowerPropertyName)DictMap.GetValueOrDefault(item.@(column.ExtendedPropertyName));
-                        @:if (item.@(column.PropertyName) == null) item.Error = "@(column.ColumnComment)字典映射失败";
+                        @:if (!string.IsNullOrWhiteSpace(item.@(column.ExtendedPropertyName))) {
+                            @:item.@(column.PropertyName) = @(column.LowerPropertyName)DictMap.GetValueOrDefault(item.@(column.ExtendedPropertyName));
+                            @:if (item.@(column.PropertyName) == null) sbError.AppendLine("@(column.ColumnComment)字典映射失败");
+                        @:}
                         }
+                        @:item.Error = sbError.ToString();
                     @:}
-                    }
 
                     @:
                     @:// 校验并过滤必填基本类型为null的字段
                     @:var rows = pageItems.Where(x => {
-                        foreach (var column in Model.ImportFieldList.Where(x => x.WhetherRequired == "Y" && Regex.IsMatch(x.NetType, "(int|long|double|float|bool|Enum[?]?)"))){
                         @:if (!string.IsNullOrWhiteSpace(x.Error)) return false;
+                        foreach (var column in Model.ImportFieldList.Where(x => x.WhetherRequired == "Y" && Regex.IsMatch(x.NetType, "(int|long|double|float|bool|Enum[?]?)"))){
                         @:if (x.@(column.PropertyName) == null){
                             @:x.Error = "@(column.ColumnComment)不能为空";
                             @:return false;
@@ -398,4 +401,5 @@ public partial class @(Model.ClassName)Service : IDynamicApiController, ITransie
         @:}
     @:}
     }
+@:}
 }