已复制1个文件
已添加8个文件
已重命名10个文件
已删除7个文件
已修改15个文件
| | |
| | | /// åºå
ç§»åº |
| | | /// </summary> |
| | | [Description("åºå
ç§»åº")] |
| | | Relocation = 300, |
| | | Relocation = 900, |
| | | /// <summary> |
| | | /// åºå¤ç§»åº |
| | | /// </summary> |
| | | [Description("åºå¤ç§»åº")] |
| | | RelocationIn = 301 |
| | | } |
| | | |
| | | public enum TaskOtherTypeEnum |
| | | { |
| | | /// <summary> |
| | | /// æºæ¢°æä»»å¡ |
| | | /// </summary> |
| | | [Description("æºæ¢°æ")] |
| | | RobotToManual = 400, |
| | | RelocationIn = 901 |
| | | } |
| | | } |
| | |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <returns>è¿åå¤çç»æ</returns> |
| | | WebResponseContent RollbackTaskStatusToLast(int taskNum); |
| | | /// <summary> |
| | | /// æ ¹æ®å åæºè®¾å¤ç¼å·/ä»»å¡ç±»ååç±»è·åä»»å¡ |
| | | /// </summary> |
| | | /// <param name="DeviceCode">设å¤å·</param> |
| | | /// <param name="taskTypeGroup">ä»»å¡ç»</param> |
| | | /// <returns></returns> |
| | | Dt_Task QueryStackerTask(string DeviceCode, TaskTypeGroup? taskTypeGroup = null); |
| | | } |
| | | } |
| | |
| | | public string PalletCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è®¾å¤ |
| | | /// </summary> |
| | | [ImporterHeader(Name = "设å¤")] |
| | | [ExporterHeader(DisplayName = "设å¤")] |
| | | [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "设å¤")] |
| | | public string DeviceCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å··éå· |
| | | /// </summary> |
| | | [ImporterHeader(Name = "å··éå·")] |
| | |
| | | </PropertyGroup> |
| | | |
| | | <ItemGroup> |
| | | <Content Remove="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Dt_Task.tsv" /> |
| | | <Content Remove="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Dt_TaskExecuteDetail.tsv" /> |
| | | <Content Remove="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Sys_Dictionary.tsv" /> |
| | | <Content Remove="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Sys_DictionaryList.tsv" /> |
| | |
| | | <ItemGroup> |
| | | <EmbeddedResource Include="index.html"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </EmbeddedResource> |
| | | <EmbeddedResource Include="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Dt_Task.tsv"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </EmbeddedResource> |
| | | <EmbeddedResource Include="wwwroot\WIDESEAWCS_DB.DBSeed.Json\Dt_TaskExecuteDetail.tsv"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | |
| | | BaseDal.DeleteAndMoveIntoHty(tasks, OperateTypeEnum.人工å é¤); |
| | | return WebResponseContent.Instance.OK($"æåå é¤{tasks.Count}æ¡æ°æ®"); |
| | | } |
| | | /// <summary> |
| | | /// æ ¹æ®å åæºè®¾å¤ç¼å·/ä»»å¡ç±»ååç±»è·åä»»å¡ |
| | | /// </summary> |
| | | /// <param name="DeviceCode"></param> |
| | | /// <param name="taskTypeGroup"></param> |
| | | /// <returns></returns> |
| | | public Dt_Task QueryStackerTask(string DeviceCode, TaskTypeGroup? taskTypeGroup = null) |
| | | { |
| | | if (taskTypeGroup == null) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.DeviceCode == DeviceCode && x.TaskState == (int)TaskStatusEnum.SC_Execute, TaskOrderBy); |
| | | } |
| | | else |
| | | { |
| | | |
| | | return BaseDal.QueryFirst(x => x.DeviceCode == DeviceCode && x.TaskState == (int)TaskStatusEnum.SC_Execute && (taskTypeGroup == TaskTypeGroup.InboundGroup ? TaskInboundTypes.Contains(x.TaskType) : TaskOutboundTypes.Contains(x.TaskType)), TaskOrderBy); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | using Quartz; |
| | | using System.Collections.Concurrent; |
| | | using System.Net.Sockets; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Core.Helper; |
| | | using WIDESEAWCS_ITaskInfoRepository; |
| | | using WIDESEAWCS_ITaskInfoService; |
| | |
| | | } |
| | | // è·åå½åéä¸åä»»å¡å¹¶ç¼åå°ç¶æä¸ |
| | | Dt_Task? task = GetTask(Crane); |
| | | if (task != null && state.CurrentTask == null && state.StackerRunMode == (int)StackerModeEnum.Automatic && state.StackerError == (int)StackerErrorEnum.Normal && state.StackerTaskNum == 0) |
| | | if (task != null && state.CurrentTask == null && state.StackerRunMode== && state.StackerTaskNum == 0) |
| | | { |
| | | SendStackerTask(task, state); |
| | | } |
| | |
| | | return _TcpSocket.SendToDeviceAsync(state.IPAddress, message).Result; |
| | | } |
| | | |
| | | private Dt_Task? GetTask(StackerCraneDevice stackerCrane) |
| | | private Dt_Task? GetTask(StackerCraneDevice stackerCrane, TaskTypeGroup? taskTypeGroup = null) |
| | | { |
| | | return null; |
| | | return _taskService.QueryStackerTask(stackerCrane.DeviceCode,taskTypeGroup); |
| | | } |
| | | } |
| | | |
| | |
| | | public int? StackerTaskNum { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å åæºè¿è¡æ¨¡å¼ |
| | | /// å åæºè¿è¡æ¨¡å¼<br/> |
| | | /// 1ï¼èªå¨æ¨¡å¼<br/> |
| | | /// 2ï¼åæ¢æ¨¡å¼<br/> |
| | | /// 3ï¼æå¨æ¨¡å¼æç¦»çº¿æ¨¡å¼<br/> |
| | | /// </summary> |
| | | public int? StackerRunMode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å åæºæ
éç¶æ |
| | | /// å åæºæ
éç¶æ<br/> |
| | | /// æ£å¸¸<br/> |
| | | /// æ
é<br/> |
| | | /// </summary> |
| | | public int? StackerError { get; set; } |
| | | |
| | |
| | | [Description("ç»çæå")] |
| | | ç»çæå = 1, |
| | | |
| | | [Description("ç»çæ¤é")] |
| | | ç»çæ¤é = 2, |
| | | |
| | | [Description("å
¥åºç¡®è®¤")] |
| | | å
¥åºç¡®è®¤ = 3, |
| | | |
| | | [Description("å
¥åºæ¤é")] |
| | | å
¥åºæ¤é = 4, |
| | | |
| | | [Description("å
¥åºå®æ")] |
| | | å
¥åºå®æ = 6, |
| | |
| | | åºåºå®æ = 8, |
| | | |
| | | [Description("ç§»åºéå®")] |
| | | ç§»åºéå® = 9, |
| | | |
| | | [Description("èåéææå")] |
| | | èåéææå = 10, |
| | | |
| | | [Description("åæéç»çæå")] |
| | | åæéç»çæå = 11, |
| | | |
| | | [Description("æå¨ç»çæå")] |
| | | æå¨ç»çæå = 12, |
| | | |
| | | [Description("æå¨ç»çå
¥åºç¡®è®¤")] |
| | | æå¨ç»çå
¥åºç¡®è®¤ = 13, |
| | | |
| | | [Description("æ£é宿")] |
| | | æ£é宿 =14, |
| | | |
| | | [Description("èåéåº")] |
| | | èåéåº = 15, |
| | | |
| | | [Description("MES使éåº")] |
| | | MES使éåº = 21, |
| | | |
| | | [Description("MES空æéåº")] |
| | | MES空æéåº = 22, |
| | | } |
| | | /// <summary> |
| | | /// æååºå屿§ï¼<br/> |
| | | /// 1:æå<br/> |
| | | /// 2:åæå<br/> |
| | | /// 3:åææ<br/> |
| | | /// 4:è¾
æå¤ä»¶<br/> |
| | | /// 5:空æ<br/> |
| | | /// </summary> |
| | | public enum ProStockAttributeEnum |
| | | { |
| | | [Description("æå")] |
| | | æå =1, |
| | | [Description("åæå")] |
| | | åæå = 2, |
| | | [Description("åææ")] |
| | | åææ = 3, |
| | | [Description("è¾
æå¤ä»¶")] |
| | | è¾
æå¤ä»¶ = 4, |
| | | [Description("空æ")] |
| | | 空æ = 5, |
| | | ç§»åºéå® = 9 |
| | | } |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_IStockRepository/IBlankStockInfoRepository.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_IStockRepository |
| | | { |
| | | public interface IBlankStockInfoRepository : IRepository<Dt_BlankStockInfo> |
| | | public interface IStockInfoRepository : IRepository<Dt_StockInfo> |
| | | { |
| | | } |
| | | } |
copy from "\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMSServices/WIDESEA_IStockRepository/IBlankStockInfoRepository.cs"
copy to "\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMSServices/WIDESEA_IStockRepository/IStockInfo_HtyRepository.cs"
| Îļþ´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_IStockRepository/IBlankStockInfoRepository.cs ¸´ÖÆ |
| | |
| | | |
| | | namespace WIDESEA_IStockRepository |
| | | { |
| | | public interface IBlankStockInfoRepository : IRepository<Dt_BlankStockInfo> |
| | | public interface IStockInfo_HtyRepository : IRepository<Dt_StockInfo_Hty> |
| | | { |
| | | } |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_IStockService/IBlankStockInfoService.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_IStockService |
| | | { |
| | | public interface IBlankStockInfoService : IService<Dt_BlankStockInfo> |
| | | public interface IStockInfoService : IService<Dt_StockInfo> |
| | | { |
| | | } |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_IStockService/IBlankStockInfo_HtyService.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_IStockService |
| | | { |
| | | public interface IBlankStockInfo_HtyService : IService<Dt_BlankStockInfo_Hty> |
| | | public interface IStockInfo_HtyService : IService<Dt_StockInfo_Hty> |
| | | { |
| | | IBlankStockInfo_HtyRepository Repository { get; } |
| | | IStockInfo_HtyRepository Repository { get; } |
| | | } |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_BlankStockInfo.cs ÐÞ¸Ä |
| | |
| | | namespace WIDESEA_Model.Models |
| | | { |
| | | /// <summary> |
| | | /// 坿éçåºåä¿¡æ¯ |
| | | /// åºåä¿¡æ¯ |
| | | /// </summary> |
| | | [SugarTable(nameof(Dt_BlankStockInfo), "坿éçåºåä¿¡æ¯")] |
| | | public class Dt_BlankStockInfo : BaseEntity |
| | | [SugarTable(nameof(Dt_StockInfo), "åºåä¿¡æ¯")] |
| | | public class Dt_StockInfo : BaseEntity |
| | | { |
| | | /// <summary> |
| | | /// ä¸»é® |
| | |
| | | public int Id { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 模å
·ç¼å· |
| | | /// ææ¡ç¼å· |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "模å
·ç¼å·")] |
| | | [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "ææ¡ç¼å·")] |
| | | public string ContainerCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è´§ä½ç¼å· |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, Length = 30, ColumnDescription = "è´§ä½ç¼å·")] |
| | | [SugarColumn(IsNullable = true, Length = 30, ColumnDescription = "è´§ä½ç¼å·")] |
| | | public string LocationCode { get; set; } |
| | | |
| | | /// <summary> |
| | |
| | | public int StockStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç©ºæ¡ |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "æ¯å¦ç©ºæ¡")] |
| | | public bool IsEmpty { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦æ»¡æ¡ |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "æ¯å¦æ»¡æ¡")] |
| | | [SugarColumn(IsNullable = true, ColumnDescription = "æ¯å¦æ»¡æ¡")] |
| | | public bool IsFill { get; set; } |
| | | |
| | | /// <summary> |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_BlankStockInfo_Hty.cs ÐÞ¸Ä |
| | |
| | | namespace WIDESEA_Model.Models |
| | | { |
| | | /// <summary> |
| | | /// 坿éçåºåä¿¡æ¯åå² |
| | | /// åºåä¿¡æ¯åå² |
| | | /// </summary> |
| | | [SugarTable(nameof(Dt_BlankStockInfo_Hty), "åºåä¿¡æ¯")] |
| | | public class Dt_BlankStockInfo_Hty : Dt_BlankStockInfo, IBaseHistoryEntity |
| | | [SugarTable(nameof(Dt_StockInfo_Hty), "åºåä¿¡æ¯åå²")] |
| | | public class Dt_StockInfo_Hty : Dt_StockInfo, IBaseHistoryEntity |
| | | { |
| | | /// <summary> |
| | | /// åè¡¨ä¸»é® |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_StockRepository/BlankStockInfoRepository.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_StockRepository |
| | | { |
| | | public class BlankStockInfoRepository : RepositoryBase<Dt_BlankStockInfo>, IBlankStockInfoRepository |
| | | public class StockInfoRepository : RepositoryBase<Dt_StockInfo>, IStockInfoRepository |
| | | { |
| | | private readonly IBasicRepository _basicRepository; |
| | | public BlankStockInfoRepository(IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository) : base(unitOfWorkManage) |
| | | public StockInfoRepository(IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository) : base(unitOfWorkManage) |
| | | { |
| | | _basicRepository = basicRepository; |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_IStockRepository; |
| | | using WIDESEA_Model.Models; |
| | | |
| | | namespace WIDESEA_StockRepository |
| | | { |
| | | public class StockInfo_HtyRepository : RepositoryBase<Dt_StockInfo_Hty>, IStockInfo_HtyRepository |
| | | { |
| | | public StockInfo_HtyRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) |
| | | { |
| | | } |
| | | } |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_StockService/BlankStockInfoService.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_StockService |
| | | { |
| | | public partial class BlankStockInfoService : ServiceBase<Dt_BlankStockInfo, IRepository<Dt_BlankStockInfo>>, IBlankStockInfoService |
| | | public partial class StockInfoService : ServiceBase<Dt_StockInfo, IRepository<Dt_StockInfo>>, IStockInfoService |
| | | { |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | public BlankStockInfoService(IRepository<Dt_BlankStockInfo> BaseDal, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal) |
| | | public StockInfoService(IRepository<Dt_StockInfo> BaseDal, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | } |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_StockService/BlankStockInfo_HtyService.cs ÐÞ¸Ä |
| | |
| | | |
| | | namespace WIDESEA_StockService |
| | | { |
| | | public partial class BlankStockInfo_HtyService : ServiceBase<Dt_BlankStockInfo_Hty, IBlankStockInfo_HtyRepository>, IBlankStockInfo_HtyService |
| | | public partial class StockInfo_HtyService : ServiceBase<Dt_StockInfo_Hty, IBlankStockInfo_HtyRepository>, IStockInfo_HtyService |
| | | { |
| | | public IBlankStockInfo_HtyRepository Repository => BaseDal; |
| | | public BlankStockInfo_HtyService(IBlankStockInfo_HtyRepository BaseDal) : base(BaseDal) |
| | | public StockInfo_HtyService(IBlankStockInfo_HtyRepository BaseDal) : base(BaseDal) |
| | | { |
| | | } |
| | | } |
| | |
| | | result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; |
| | | } |
| | | break; |
| | | case "proStockAttributeEnum": |
| | | { |
| | | List<object> data = new List<object>(); |
| | | |
| | | { |
| | | Type type = typeof(ProStockAttributeEnum); |
| | | List<int> enums = Enum.GetValues(typeof(ProStockAttributeEnum)).Cast<int>().ToList(); |
| | | int index = 0; |
| | | foreach (var item in enums) |
| | | { |
| | | FieldInfo? fieldInfo = typeof(ProStockAttributeEnum).GetField(((ProStockAttributeEnum)item).ToString()); |
| | | DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); |
| | | if (description != null) |
| | | { |
| | | data.Add(new { key = item.ToString(), value = description.Description }); |
| | | } |
| | | else |
| | | { |
| | | data.Add(new { key = item.ToString(), value = item.ToString() }); |
| | | } |
| | | index++; |
| | | } |
| | | } |
| | | |
| | | result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; |
| | | } |
| | | break; |
| | | case "materielTypeEnum": |
| | | { |
| | | List<object> data = new List<object>(); |
| | |
| | | private readonly IBasicService _basicService; |
| | | private readonly IInvokeERPService _invokeERPService; |
| | | private readonly IInvokeMESService _invokeMESService; |
| | | private readonly IRepository<Dt_BlankStockInfo> _blankStockInfoRepository; |
| | | private readonly IRepository<Dt_StockInfo> _blankStockInfoRepository; |
| | | private readonly IApiInfoRepository _apiInfoRepository; |
| | | public ITaskRepository Repository => BaseDal; |
| | | |
| | |
| | | |
| | | public List<int> TaskOutboundTypes => typeof(TaskTypeEnum).GetEnumIndexList().Where(x => x >= 100 && x < 500).ToList(); |
| | | |
| | | public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IBasicService basicService, IBasicRepository basicRepository, IInvokeERPService invokeERPService, IInvokeMESService invokeMESService, IRepository<Dt_BlankStockInfo> blankStockInfoRepository, IApiInfoRepository _apiInfoRepository) : base(BaseDal) |
| | | public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IBasicService basicService, IBasicRepository basicRepository, IInvokeERPService invokeERPService, IInvokeMESService invokeMESService, IRepository<Dt_StockInfo> blankStockInfoRepository, IApiInfoRepository _apiInfoRepository) : base(BaseDal) |
| | | { |
| | | _mapper = mapper; |
| | | _unitOfWorkManage = unitOfWorkManage; |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/BlankStockController.cs ÐÞ¸Ä |
| | |
| | | /// </summary> |
| | | [Route("api/BlankStockInfo")] |
| | | [ApiController] |
| | | public class BlankStockController : ApiBaseController<IBlankStockInfoService, Dt_BlankStockInfo> |
| | | public class BlankStockController : ApiBaseController<IStockInfoService, Dt_StockInfo> |
| | | { |
| | | public BlankStockController(IBlankStockInfoService service) : base(service) |
| | | public BlankStockController(IStockInfoService service) : base(service) |
| | | { |
| | | } |
| | | |
| ÎļþÃû´Ó ´úÂë¹ÜÀí/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/BlankStockInfo_HtyController.cs ÐÞ¸Ä |
| | |
| | | /// </summary> |
| | | [Route("api/BlankStockInfo_Hty")] |
| | | [ApiController] |
| | | public class BlankStockInfo_HtyController : ApiBaseController<IBlankStockInfo_HtyService, Dt_BlankStockInfo_Hty> |
| | | public class StockInfo_HtyController : ApiBaseController<IStockInfo_HtyService, Dt_StockInfo_Hty> |
| | | { |
| | | public BlankStockInfo_HtyController(IBlankStockInfo_HtyService service) : base(service) |
| | | public StockInfo_HtyController(IStockInfo_HtyService service) : base(service) |
| | | { |
| | | } |
| | | } |
| | |
| | | builder.Services.AddWebSocketSetup(); |
| | | builder.Services.AddSqlsugarSetup();//SqlSugar å¯å¨æå¡ |
| | | builder.Services.AddDbSetup();//Db å¯å¨æå¡ |
| | | //builder.Services.AddInitializationHostServiceSetup();//åºç¨åå§åæå¡æ³¨å
¥ |
| | | builder.Services.AddInitializationHostServiceSetup();//åºç¨åå§åæå¡æ³¨å
¥ |
| | | builder.Services.AddHostedService<PermissionDataHostService>();//åºç¨åå§åæå¡æ³¨å
¥ |
| | | builder.Services.AddAutoMapperSetup(); |
| | | |
| | |
| | | //è¿æ¥å符串 |
| | | //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", |
| | | //"ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWMS_HUAIAN;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | "ConnectionString": "Data Source=.;Initial Catalog=WIDESEA_WMSFengLv;User ID=sa;Password=123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | "ConnectionString": "Data Source=.;Initial Catalog=FengLv_WMS;User ID=sa;Password=123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | //"ConnectionString": "Data Source=192.168.35.3;Initial Catalog=WIDESEA_WMSLLD;User ID=sa;Password=Sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | //æ§WMSæ°æ®åºè¿æ¥ |
| | | //"TeConnectionString": "Data Source=10.30.4.92;Initial Catalog=TeChuang;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |