From 733e63cb362f17aea4a1020654fa348a0d0c1f06 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 24 二月 2025 00:08:59 +0800
Subject: [PATCH] 优化入库逻辑,优化直接出库逻辑,优化移库任务逻辑
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Core/Seed/FrameSeed.cs | 582 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 582 insertions(+), 0 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Seed/FrameSeed.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Seed/FrameSeed.cs"
new file mode 100644
index 0000000..4711bda
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Seed/FrameSeed.cs"
@@ -0,0 +1,582 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEA_Core.Seed
+{
+ public class FrameSeed
+ {
+
+ /// <summary>
+ /// 鐢熸垚Controller灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <param name="isMuti"></param>
+ /// <returns></returns>
+ public static bool CreateControllers(SqlSugarScope sqlSugarClient, string ConnId = null, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_Controller_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.Api.Controllers", "Blog.Core.Api.Controllers", tableNames, "", isMuti);
+ return true;
+ }
+
+ /// <summary>
+ /// 鐢熸垚Model灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <param name="isMuti"></param>
+ /// <returns></returns>
+ public static bool CreateModels(SqlSugarScope sqlSugarClient, string ConnId, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_Model_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.Model", "Blog.Core.Model.Models", tableNames, "", isMuti);
+ return true;
+ }
+
+ /// <summary>
+ /// 鐢熸垚IRepository灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="isMuti"></param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <returns></returns>
+ public static bool CreateIRepositorys(SqlSugarScope sqlSugarClient, string ConnId, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_IRepository_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.IRepository", "Blog.Core.IRepository", tableNames, "", isMuti);
+ return true;
+ }
+
+
+
+ /// <summary>
+ /// 鐢熸垚 IService 灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="isMuti"></param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <returns></returns>
+ public static bool CreateIServices(SqlSugarScope sqlSugarClient, string ConnId, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_IServices_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.IServices", "Blog.Core.IServices", tableNames, "", isMuti);
+ return true;
+ }
+
+
+
+ /// <summary>
+ /// 鐢熸垚 Repository 灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="isMuti"></param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <returns></returns>
+ public static bool CreateRepository(SqlSugarScope sqlSugarClient, string ConnId, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_Repository_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.Repository", "Blog.Core.Repository", tableNames, "", isMuti);
+ return true;
+ }
+
+
+
+ /// <summary>
+ /// 鐢熸垚 Service 灞�
+ /// </summary>
+ /// <param name="sqlSugarClient">sqlsugar瀹炰緥</param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="isMuti"></param>
+ /// <param name="tableNames">鏁版嵁搴撹〃鍚嶆暟缁勶紝榛樿绌猴紝鐢熸垚鎵�鏈夎〃</param>
+ /// <returns></returns>
+ public static bool CreateServices(SqlSugarScope sqlSugarClient, string ConnId, bool isMuti = false, string[] tableNames = null)
+ {
+ Create_Services_ClassFileByDBTalbe(sqlSugarClient, ConnId, $@"C:\my-file\Blog.Core.Services", "Blog.Core.Services", tableNames, "", isMuti);
+ return true;
+ }
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇Controller灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇Controller灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ /// <param name="blnSerializable">鏄惁搴忓垪鍖�</param>
+ private static void Create_Controller_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false,
+ bool blnSerializable = false)
+ {
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"using Blog.Core.IServices;
+using Blog.Core.Model;
+using Blog.Core.Model.Models;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+using System;
+using System.Linq.Expressions;
+using System.Threading.Tasks;
+
+namespace " + strNameSpace + @"
+{
+ [Route(""api/[controller]/[action]"")]
+ [ApiController]
+ [Authorize(Permissions.Name)]
+ public class {ClassName}Controller : ControllerBase
+ {
+ /// <summary>
+ /// 鏈嶅姟鍣ㄦ帴鍙o紝鍥犱负鏄ā鏉跨敓鎴愶紝鎵�浠ラ瀛楁瘝鏄ぇ鍐欑殑锛岃嚜宸卞彲浠ラ噸鏋勪笅
+ /// </summary>
+ private readonly I{ClassName}Services _{ClassName}Services;
+
+ public {ClassName}Controller(I{ClassName}Services {ClassName}Services)
+ {
+ _{ClassName}Services = {ClassName}Services;
+ }
+
+ [HttpGet]
+ public async Task<MessageModel<PageModel<{ClassName}>>> Get(int page = 1, string key = """",int intPageSize = 50)
+ {
+ if (string.IsNullOrEmpty(key) || string.IsNullOrWhiteSpace(key))
+ {
+ key = """";
+ }
+
+ Expression<Func<{ClassName}, bool>> whereExpression = a => true;
+
+ return new MessageModel<PageModel<{ClassName}>>()
+ {
+ msg = ""鑾峰彇鎴愬姛"",
+ success = true,
+ response = await _{ClassName}Services.QueryPage(whereExpression, page, intPageSize)
+ };
+
+ }
+
+ [HttpGet(""{id}"")]
+ public async Task<MessageModel<{ClassName}>> Get(string id)
+ {
+ return new MessageModel<{ClassName}>()
+ {
+ msg = ""鑾峰彇鎴愬姛"",
+ success = true,
+ response = await _{ClassName}Services.QueryById(id)
+ };
+ }
+
+ [HttpPost]
+ public async Task<MessageModel<string>> Post([FromBody] {ClassName} request)
+ {
+ var data = new MessageModel<string>();
+
+ var id = await _{ClassName}Services.Add(request);
+ data.success = id > 0;
+ if (data.success)
+ {
+ data.response = id.ObjToString();
+ data.msg = ""娣诲姞鎴愬姛"";
+ }
+
+ return data;
+ }
+
+ [HttpPut]
+ public async Task<MessageModel<string>> Put([FromBody] {ClassName} request)
+ {
+ var data = new MessageModel<string>();
+ data.success = await _{ClassName}Services.Update(request);
+ if (data.success)
+ {
+ data.msg = ""鏇存柊鎴愬姛"";
+ data.response = request?.id.ObjToString();
+ }
+
+ return data;
+ }
+
+ [HttpDelete]
+ public async Task<MessageModel<string>> Delete(int id)
+ {
+ var data = new MessageModel<string>();
+ var model = await _{ClassName}Services.QueryById(id);
+ model.IsDeleted = true;
+ data.success = await _departmentServices.Update(model);
+ if (data.success)
+ {
+ data.msg = ""鍒犻櫎鎴愬姛"";
+ data.response = model?.Id.ObjToString();
+ }
+
+ return data;
+ }
+ }
+}")
+
+ .ToClassStringList(strNameSpace);
+
+ Dictionary<string, string> newdic = new Dictionary<string, string>();
+ //寰幆澶勭悊 棣栧瓧姣嶅皬鍐� 骞舵彃鍏ユ柊鐨� Dictionary
+ foreach (KeyValuePair<string, string> item in ls)
+ {
+ string newkey = "_" + item.Key.First().ToString().ToLower() + item.Key.Substring(1);
+ string newvalue = item.Value.Replace("_" + item.Key, newkey);
+ newdic.Add(item.Key, newvalue);
+ }
+ CreateFilesByClassStringList(newdic, strPath, "{0}Controller");
+ }
+ #endregion
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇Model灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇Model灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ /// <param name="blnSerializable">鏄惁搴忓垪鍖�</param>
+ private static void Create_Model_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false,
+ bool blnSerializable = false)
+ {
+ //澶氬簱鏂囦欢鍒嗙
+ if (isMuti)
+ {
+ strPath = strPath + @"\Models\" + ConnId;
+ strNameSpace = strNameSpace + "." + ConnId;
+ }
+
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"{using}
+
+namespace " + strNameSpace + @"
+{
+{ClassDescription}
+ [SugarTable( ""{ClassName}"", """ + ConnId + @""")]" + (blnSerializable ? "\n [Serializable]" : "") + @"
+ public class {ClassName}" + (string.IsNullOrEmpty(strInterface) ? "" : (" : " + strInterface)) + @"
+ {
+ public {ClassName}()
+ {
+ }
+{PropertyName}
+ }
+}")
+ //.SettingPropertyDescriptionTemplate(p => p = string.Empty)
+ .SettingPropertyTemplate(p => p =
+@"{SugarColumn}
+ public {PropertyType} {PropertyName} { get; set; }")
+
+ //.SettingConstructorTemplate(p => p = " this._{PropertyName} ={DefaultValue};")
+
+ .ToClassStringList(strNameSpace);
+ CreateFilesByClassStringList(ls, strPath, "{0}");
+ }
+ #endregion
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇IRepository灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇IRepository灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ private static void Create_IRepository_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false
+ )
+ {
+ //澶氬簱鏂囦欢鍒嗙
+ if (isMuti)
+ {
+ strPath = strPath + @"\" + ConnId;
+ strNameSpace = strNameSpace + "." + ConnId;
+ }
+
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"using Blog.Core.IRepository.Base;
+using Blog.Core.Model.Models" + (isMuti ? "." + ConnId + "" : "") + @";
+
+namespace " + strNameSpace + @"
+{
+ /// <summary>
+ /// I{ClassName}Repository
+ /// </summary>
+ public interface I{ClassName}Repository : IBaseRepository<{ClassName}>" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @"
+ {
+ }
+}")
+
+ .ToClassStringList(strNameSpace);
+ CreateFilesByClassStringList(ls, strPath, "I{0}Repository");
+ }
+ #endregion
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇IServices灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇IServices灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ private static void Create_IServices_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false)
+ {
+ //澶氬簱鏂囦欢鍒嗙
+ if (isMuti)
+ {
+ strPath = strPath + @"\" + ConnId;
+ strNameSpace = strNameSpace + "." + ConnId;
+ }
+
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"using Blog.Core.IServices.BASE;
+using Blog.Core.Model.Models" + (isMuti ? "." + ConnId + "" : "") + @";
+
+namespace " + strNameSpace + @"
+{
+ /// <summary>
+ /// I{ClassName}Services
+ /// </summary>
+ public interface I{ClassName}Services :IBaseServices<{ClassName}>" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @"
+ {
+ }
+}")
+
+ .ToClassStringList(strNameSpace);
+ CreateFilesByClassStringList(ls, strPath, "I{0}Services");
+ }
+ #endregion
+
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇 Repository 灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇 Repository 灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ private static void Create_Repository_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false)
+ {
+ //澶氬簱鏂囦欢鍒嗙
+ if (isMuti)
+ {
+ strPath = strPath + @"\" + ConnId;
+ strNameSpace = strNameSpace + "." + ConnId;
+ }
+
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"using Blog.Core.IRepository" + (isMuti ? "." + ConnId + "" : "") + @";
+using Blog.Core.IRepository.UnitOfWork;
+using Blog.Core.Model.Models" + (isMuti ? "." + ConnId + "" : "") + @";
+using Blog.Core.Repository.Base;
+
+namespace " + strNameSpace + @"
+{
+ /// <summary>
+ /// {ClassName}Repository
+ /// </summary>
+ public class {ClassName}Repository : BaseRepository<{ClassName}>, I{ClassName}Repository" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @"
+ {
+ public {ClassName}Repository(IUnitOfWork unitOfWork) : base(unitOfWork)
+ {
+ }
+ }
+}")
+ .ToClassStringList(strNameSpace);
+
+
+ CreateFilesByClassStringList(ls, strPath, "{0}Repository");
+ }
+ #endregion
+
+
+ #region 鏍规嵁鏁版嵁搴撹〃鐢熶骇 Services 灞�
+
+ /// <summary>
+ /// 鍔熻兘鎻忚堪:鏍规嵁鏁版嵁搴撹〃鐢熶骇 Services 灞�
+ /// 浣溿��銆�鑰�:Blog.Core
+ /// </summary>
+ /// <param name="sqlSugarClient"></param>
+ /// <param name="ConnId">鏁版嵁搴撻摼鎺D</param>
+ /// <param name="strPath">瀹炰綋绫诲瓨鏀捐矾寰�</param>
+ /// <param name="strNameSpace">鍛藉悕绌洪棿</param>
+ /// <param name="lstTableNames">鐢熶骇鎸囧畾鐨勮〃</param>
+ /// <param name="strInterface">瀹炵幇鎺ュ彛</param>
+ /// <param name="isMuti"></param>
+ private static void Create_Services_ClassFileByDBTalbe(
+ SqlSugarScope sqlSugarClient,
+ string ConnId,
+ string strPath,
+ string strNameSpace,
+ string[] lstTableNames,
+ string strInterface,
+ bool isMuti = false)
+ {
+ //澶氬簱鏂囦欢鍒嗙
+ if (isMuti)
+ {
+ strPath = strPath + @"\" + ConnId;
+ strNameSpace = strNameSpace + "." + ConnId;
+ }
+
+ var IDbFirst = sqlSugarClient.DbFirst;
+ if (lstTableNames != null && lstTableNames.Length > 0)
+ {
+ IDbFirst = IDbFirst.Where(lstTableNames);
+ }
+ var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
+
+ .SettingClassTemplate(p => p =
+@"
+using Blog.Core.IServices" + (isMuti ? "." + ConnId + "" : "") + @";
+using Blog.Core.Model.Models" + (isMuti ? "." + ConnId + "" : "") + @";
+using Blog.Core.Services.BASE;
+using Blog.Core.IRepository.Base;
+
+namespace " + strNameSpace + @"
+{
+ public class {ClassName}Services : BaseServices<{ClassName}>, I{ClassName}Services" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @"
+ {
+ private readonly IBaseRepository<{ClassName}> _dal;
+ public {ClassName}Services(IBaseRepository<{ClassName}> dal)
+ {
+ this._dal = dal;
+ base.BaseDal = dal;
+ }
+ }
+}")
+ .ToClassStringList(strNameSpace);
+
+ CreateFilesByClassStringList(ls, strPath, "{0}Services");
+ }
+ #endregion
+
+
+ #region 鏍规嵁妯℃澘鍐呭鎵归噺鐢熸垚鏂囦欢
+ /// <summary>
+ /// 鏍规嵁妯℃澘鍐呭鎵归噺鐢熸垚鏂囦欢
+ /// </summary>
+ /// <param name="ls">绫绘枃浠跺瓧绗︿覆list</param>
+ /// <param name="strPath">鐢熸垚璺緞</param>
+ /// <param name="fileNameTp">鏂囦欢鍚嶆牸寮忔ā鏉�</param>
+ private static void CreateFilesByClassStringList(Dictionary<string, string> ls, string strPath, string fileNameTp)
+ {
+
+ foreach (var item in ls)
+ {
+ var fileName = $"{string.Format(fileNameTp, item.Key)}.cs";
+ var fileFullPath = Path.Combine(strPath, fileName);
+ if (!Directory.Exists(strPath))
+ {
+ Directory.CreateDirectory(strPath);
+ }
+ File.WriteAllText(fileFullPath, item.Value, Encoding.UTF8);
+ }
+ }
+ #endregion
+ }
+}
--
Gitblit v1.9.3