Sfoglia il codice sorgente

!1823 统一api生成命令编码
* 修复 if (dictTableField.Any()) { 缺少结束大括号
* 避免默认值重复添加
* Merge branch 'v2' of https://gitee.com/zuohuaijun/Admin.NET into v2
* 统一api生成命令编码
* 添加build-all-api 配置

CyrusZhou 9 mesi fa
parent
commit
28b1268ef9

+ 22 - 16
Admin.NET/Admin.NET.Core/Service/CodeGen/CustomViewEngine.cs

@@ -145,25 +145,31 @@ public class CustomViewEngine : ViewEngineModel
     public string GetAddDefaultValue()
     {
         var content = "";
-        var status = TableField.FirstOrDefault(IsStatus);
-        var orderNo = TableField.FirstOrDefault(c => c.NetType.TrimEnd('?') == "int" && c.PropertyName == nameof(SysUser.OrderNo));
-        if (status != null) content += $"{status.LowerPropertyName}: {(int)StatusEnum.Enable},";
-        if (orderNo != null) content += $"{orderNo.LowerPropertyName}: 100,";
-                foreach (var item in DefaultValueList)
+        if (DefaultValueList.Count == 0)
         {
-            if (!string.IsNullOrWhiteSpace(item.DefaultValue))
+            var status = TableField.FirstOrDefault(IsStatus);
+            var orderNo = TableField.FirstOrDefault(c => c.NetType.TrimEnd('?') == "int" && c.PropertyName == nameof(SysUser.OrderNo));
+            if (status != null) content += $"{status.LowerPropertyName}: {(int)StatusEnum.Enable},";
+            if (orderNo != null) content += $"{orderNo.LowerPropertyName}: 100,";
+        }
+        else
+        {
+            foreach (var item in DefaultValueList)
             {
-                switch (item.EffectType)
+                if (!string.IsNullOrWhiteSpace(item.DefaultValue))
                 {
-                    case "InputNumber":
-                        content += $"{item.LowerPropertyName}: {item.DefaultValue},";
-                        break;
-                    case "Switch":
-                        content += $"{item.LowerPropertyName}: {(item.DefaultValue=="1"?true.ToString().ToLower():false.ToString().ToLower())},";
-                        break;
-                    default:
-                        content += $"{item.LowerPropertyName}: '{item.DefaultValue}',";
-                        break;
+                    switch (item.EffectType)
+                    {
+                        case "InputNumber":
+                            content += $"{item.LowerPropertyName}: {item.DefaultValue},";
+                            break;
+                        case "Switch":
+                            content += $"{item.LowerPropertyName}: {(item.DefaultValue == "1" ? true.ToString().ToLower() : false.ToString().ToLower())},";
+                            break;
+                        default:
+                            content += $"{item.LowerPropertyName}: '{item.DefaultValue}',";
+                            break;
+                    }
                 }
             }
         }

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

@@ -342,6 +342,7 @@ public partial class @(Model.ClassName)Service : IDynamicApiController, ITransie
                         }
                         @:item.Error = sbError.ToString();
                     @:}
+                    }
 
                     @:
                     @:// 校验并过滤必填基本类型为null的字段
@@ -401,5 +402,4 @@ public partial class @(Model.ClassName)Service : IDynamicApiController, ITransie
         @:}
     @:}
     }
-@:}
 }

+ 4 - 4
Web/api_build/build.bat

@@ -22,15 +22,15 @@ if "%1"=="approvalFlow" (
 )
 
 if exist %apiServicesPath% (
-    echo ================================ ???? %moduleName% ================================
+    echo "================================ 删除目录 %apiServicesPath% ================================"
     rd /s /q %apiServicesPath%
 )
 
-echo ================================ ???? %moduleName% ================================
+echo "================================ 开始生成 %moduleName% ================================"
 
 java -jar %dir%swagger-codegen-cli.jar generate -i %apiUrl% -l typescript-axios -o %apiServicesPath%
 
-@rem ????????????
+@rem 删除不必要的文件和文件夹
 rd /s /q %apiServicesPath%.swagger-codegen
 del /q %apiServicesPath%.gitignore
 del /q %apiServicesPath%.npmignore
@@ -40,4 +40,4 @@ del /q %apiServicesPath%package.json
 del /q %apiServicesPath%README.md
 del /q %apiServicesPath%tsconfig.json
 
-echo ================================ ???? ================================
+echo "================================ 生成结束 ================================"

+ 38 - 20
Web/api_build/build.sh

@@ -1,28 +1,46 @@
-#!/bin/sh
+#!/bin/bash
 
-currPath=$(pwd)
-parentPath=$(dirname "$currPath")
-apiServicesPath=${parentPath}/src/api-services/
+dir="$(dirname "$0")"
 
-echo "================================ 生成目录 ${apiServicesPath} ================================"
+moduleName="apiServices"
+apiServicesPath="$dir/../src/api-services/"
+apiUrl="http://localhost:5005/swagger/Default/swagger.json"
 
-# 判断目录是否存在
-if test -d "$apiServicesPath"; then
-  echo "================================ 删除目录 api-services ================================"
-  rm -rf "${apiServicesPath}"
+case "$1" in
+    approvalFlow)
+        moduleName="approvalFlow"
+        apiServicesPath="$dir/../src/api-plugins/approvalFlow/"
+        apiUrl="http://localhost:5005/swagger/ApprovalFlow/swagger.json"
+        ;;
+    dingTalk)
+        moduleName="dingTalk"
+        apiServicesPath="$dir/../src/api-plugins/dingTalk/"
+        apiUrl="http://localhost:5005/swagger/DingTalk/swagger.json"
+        ;;
+    goView)
+        moduleName="goView"
+        apiServicesPath="$dir/../src/api-plugins/goView/"
+        apiUrl="http://localhost:5005/swagger/GoView/swagger.json"
+        ;;
+esac
+
+if [ -d "$apiServicesPath" ]; then
+    echo "================================ 删除目录 $apiServicesPath ================================"
+    rm -rf "$apiServicesPath"
 fi
 
-echo "================================ 开始生成 api-services ================================"
+echo "================================ 开始生成 $moduleName ================================"
 
-java -jar "${currPath}"/swagger-codegen-cli.jar generate -i http://localhost:5005/swagger/All%20Groups/swagger.json -l typescript-axios -o "${apiServicesPath}"
+java -jar "$dir/swagger-codegen-cli.jar" generate -i "$apiUrl" -l typescript-axios -o "$apiServicesPath"
 
-rm -rf "${apiServicesPath}".swagger-codegen
-rm -f "${apiServicesPath}".gitignore
-rm -f "${apiServicesPath}".npmignore
-rm -f "${apiServicesPath}".swagger-codegen-ignore
-rm -f "${apiServicesPath}"git_push.sh
-rm -f "${apiServicesPath}"package.json
-rm -f "${apiServicesPath}"README.md
-rm -f "${apiServicesPath}"tsconfig.json
+# 删除不必要的文件和文件夹
+rm -rf "$apiServicesPath/.swagger-codegen"
+rm -f "$apiServicesPath/.gitignore"
+rm -f "$apiServicesPath/.npmignore"
+rm -f "$apiServicesPath/.swagger-codegen-ignore"
+rm -f "$apiServicesPath/git_push.sh"
+rm -f "$apiServicesPath/package.json"
+rm -f "$apiServicesPath/README.md"
+rm -f "$apiServicesPath/tsconfig.json"
 
-echo "================================ 生成结束 ================================"
+echo "================================ 生成结束 ================================"

+ 2 - 1
Web/package.json

@@ -14,7 +14,8 @@
 		"build-api": "cd api_build/ && build.bat",
 		"build-approvalFlow-api": "cd api_build/ && build.bat approvalFlow",
 		"build-dingTalk-api": "cd api_build/ && build.bat dingTalk",
-		"build-goView-api": "cd api_build/ && build.bat goView"
+		"build-goView-api": "cd api_build/ && build.bat goView",
+		"build-all-api": "npm run build-api && npm run build-approvalFlow-api &&  npm run build-dingTalk-api && npm run build-goView-api"
 	},
 	"dependencies": {
 		"@element-plus/icons-vue": "^2.3.1",