فهرست منبع

Fix:解决生成的index.vue,没有把TreeSelector类型的代码转换为描述的问题。

yzp 2 سال پیش
والد
کامیت
428724f202

+ 10 - 3
Admin.NET/Admin.NET.Web.Entry/wwwroot/Template/Output.cs.vm

@@ -14,13 +14,20 @@ if(column.EffectType == "fk")
        @:public @column.NetType @column.ColumnName { get; set; } 
        @:
        @:/// <summary>
-       @:/// @column.ColumnComment
+       @:/// @(column.ColumnComment) 描述
        @:/// </summary>
        @:public @(@column.FkColumnNetType) @(@column.FkEntityName)@(@column.FkColumnName) { get; set; } 
 
 }else if(column.EffectType == "Upload"){
-        @:public @column.NetType @column.ColumnName { get; set; }
-        @:public SysFile @(@column.ColumnName)Attachment { get; set; }
+       @:public @column.NetType @column.ColumnName { get; set; }
+       @:public SysFile @(@column.ColumnName)Attachment { get; set; }
+}else if(column.EffectType == "ApiTreeSelect"){
+       @:public @column.NetType @column.ColumnName { get; set; } 
+       @:
+       @:/// <summary>
+       @:/// @(column.ColumnComment) 描述 
+       @:/// </summary>
+       @:public string? @(@column.ColumnName)@(@column.DisplayColumn) { get; set; } 
 }else{
        @:public @column.NetType @column.ColumnName { get; set; }
 }

+ 6 - 1
Admin.NET/Admin.NET.Web.Entry/wwwroot/Template/Service.cs.vm

@@ -39,11 +39,14 @@ if (@column.QueryWhether == "Y"){
 }
 @{string tableName = "u";}
 @if(Model.IsJoinTable){
-                    @://处理外键相关字段的连接
+                    @://处理外键和TreeSelector相关字段的连接
     @foreach (var column in Model.TableField){
         if(@column.EffectType == "fk"){
             tableName += ", " + column.ColumnName.ToLower();
                     @:.LeftJoin<@(@column.FkEntityName)>((@(@tableName)) => u.@(@column.ColumnName) == @(@column.ColumnName.ToLower()).Id )
+        } else if(@column.EffectType == "ApiTreeSelect"){
+            tableName += ", " + column.ColumnName.ToLower();
+                    @:.LeftJoin<@(@column.FkEntityName)>((@(@tableName)) => u.@(@column.ColumnName) == @(@column.ColumnName.ToLower()).@(@column.ValueColumn) )
         }
     }
                     @:.Select((@(@tableName))=> new @(@Model.ClassName)Output{
@@ -51,6 +54,8 @@ if (@column.QueryWhether == "Y"){
                         @:@(@column.ColumnName) = u.@(@column.ColumnName), 
                         if(@column.EffectType == "fk"){   
                         @:@(@column.FkEntityName)@(@column.FkColumnName) = @(@column.ColumnName.ToLower()).@(@column.FkColumnName),
+                        } else if(@column.EffectType == "ApiTreeSelect"){   
+                        @:@(@column.ColumnName)@(@column.DisplayColumn) = @(@column.ColumnName.ToLower()).@(@column.DisplayColumn),
                         }
 }
                     @:})

+ 3 - 1
Admin.NET/Admin.NET.Web.Entry/wwwroot/Template/index.vue.vm

@@ -74,7 +74,7 @@
         <el-table-column type="index" label="序号" width="55" align="center"/>
         @foreach (var column in Model.TableField){
         if(@column.WhetherTable == "Y"){
-        if(@column.EffectType == "Upload"||@column.EffectType == "fk"||@column.EffectType == "Switch"||@column.EffectType == "ConstSelector"){
+        if(@column.EffectType == "Upload"||@column.EffectType == "fk"||@column.EffectType == "ApiTreeSelect"||@column.EffectType == "Switch"||@column.EffectType == "ConstSelector"){
         @:<el-table-column prop="@column.LowerColumnName" label="@column.ColumnComment" width="@(column.ColumnComment!=null && column.ColumnComment.Length > 5 ? column.ColumnComment.Length * 15 : 120)" show-overflow-tooltip="">
           @:<template #default="scope">
             if(@column.EffectType == "Upload"){
@@ -89,6 +89,8 @@
             @:preview-teleported=""/>
             }else if(@column.EffectType == "fk"){
             @:<span>{{scope.row.@LowerFirstLetter(@column.FkEntityName)@(@column.FkColumnName)}}</span>
+            }else if(@column.EffectType == "ApiTreeSelect"){
+            @:<span>{{scope.row.@LowerFirstLetter(@column.ColumnName)@(column.DisplayColumn)}}</span>
             }else if(@column.EffectType == "Switch"){
             @:<el-tag v-if="scope.row.@(@column.LowerColumnName)"> 是 </el-tag>
             @:<el-tag type="danger" v-else=""> 否 </el-tag>