Browse Source

修改缴库 和 耗用的 汇总

master
郑勃旭 1 year ago
parent
commit
9fc8e9402e
  1. 17
      be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain.Acl/InterfaceCalendar/InterfaceCalendarAclService.cs
  2. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteAppService.cs
  3. 20
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteAppService.cs
  4. 62
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/BackFlushNoteEventHandler.cs
  5. 56
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs
  6. 74
      build/src/docker/publish/conf/settings/appsettings.Development.json

17
be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain.Acl/InterfaceCalendar/InterfaceCalendarAclService.cs

@ -24,12 +24,19 @@ public class InterfaceCalendarAclService
public virtual async Task<DateTime> GetActiveDateAsync(DateTime time)
{
var dto = await _cache.GetOrAddItemAsync(
$"{time:yyyyMMddHH}",
async () => await GetFromAppServiceAsync(time).ConfigureAwait(false),
CacheMinutes).ConfigureAwait(false);
try
{
var dto = await _cache.GetOrAddItemAsync(
$"{time:yyyyMMddHH}",
async () => await GetFromAppServiceAsync(time).ConfigureAwait(false),
CacheMinutes).ConfigureAwait(false);
return dto?.ConvertToTime ?? time;
return dto?.ConvertToTime ?? time;
}
catch (Exception e)
{
return DateTime.Now;
}
}
private async Task<InterfaceCalendarDTO> GetFromAppServiceAsync(DateTime time)

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteAppService.cs

@ -1,3 +1,4 @@
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
@ -14,4 +15,11 @@ public interface IProductReceiptNoteAppService : ISfsStoreMasterReadOnlyAppServi
bool includeDetails = false,
CancellationToken cancellationToken = default);
/// <summary>
/// 批量新增接口
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
//[Authorize(ProductReceiptNotePermissions.Create)]
Task<List<ProductReceiptNoteDTO>> CreateManyAsync(List<ProductReceiptNoteEditInput> input);
}

20
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteAppService.cs

@ -1,3 +1,4 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
@ -52,6 +53,25 @@ public class ProductReceiptNoteAppService :
return dto;
}
/// <summary>
/// 批量新增接口
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("create-many")]
//[Authorize(ProductReceiptNotePermissions.Create)]
public async Task<List<ProductReceiptNoteDTO>> CreateManyAsync(List<ProductReceiptNoteEditInput> input)
{
var entityList = ObjectMapper.Map<List<ProductReceiptNoteEditInput>,List< ProductReceiptNote>>(input);
//转到实现,保存【完工收货记录】
await _productReceiptNoteManager.CreateManyAsync(entityList).ConfigureAwait(false);
var dtoList = ObjectMapper.Map<List<ProductReceiptNote>,List<ProductReceiptNoteDTO>>(entityList);
//返回创建的记录
return dtoList;
}
[HttpPost("by-type/{type}")]
public virtual async Task<PagedResultDto<ProductReceiptNoteDTO>> GetListByTypeAsync(
SfsStoreRequestInputBase requestInput,

62
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/BackFlushNoteEventHandler.cs

@ -23,28 +23,68 @@ public class BackFlushNoteEventHandler
await AddTransactionsAsync(entity).ConfigureAwait(false);
}
private async Task AddTransactionsAsync(BackFlushNote backFlushNote)
{
var inboundTransactions = new List<TransactionEditInput>();
inboundTransactions.AddRange(await BuildTransactionsAsync(backFlushNote));
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
}
[UnitOfWork]
public virtual async Task HandleEventAsync(SfsCreatedEntityEventData<List<BackFlushNote>> eventData)
{
var entities = eventData.Entity;
foreach (var entity in entities)
{
await AddTransactionsAsync(entity).ConfigureAwait(false);
}
await AddTransactionsAsync(entities).ConfigureAwait(false);
}
private async Task AddTransactionsAsync(BackFlushNote backFlushNote)
private async Task AddTransactionsAsync(List<BackFlushNote> backFlushNotes)
{
var inboundTransactions = new List<TransactionEditInput>();
inboundTransactions.AddRange(BuildTransactions(backFlushNote));
//如果要做库存事务汇总,可以修改此处
foreach (var backFlushNote in backFlushNotes)
{
inboundTransactions.AddRange(await BuildTransactionsAsync(backFlushNote).ConfigureAwait(false));
}
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
var transactionEditInputs = inboundTransactions.GroupBy(p => new
{
p.ItemCode,
p.LocationCode,
p.Status,
p.PackingCode,
p.Lot
}).Select(p => p.FirstOrDefault()).ToList();
foreach (var variableTransactionEditInput in transactionEditInputs)
{
var sameList = inboundTransactions.Where(p =>
p.ItemCode == variableTransactionEditInput.ItemCode &&
p.LocationCode == variableTransactionEditInput.LocationCode &&
p.Status == variableTransactionEditInput.Status &&
p.Lot == variableTransactionEditInput.Lot &&
p.PackingCode == variableTransactionEditInput.PackingCode)
.ToList();
variableTransactionEditInput.Qty = sameList
.Sum(p => p.Qty);
var docNumber = string.Empty;
foreach (var transactionEditInput in sameList)
{
docNumber += "----【单据号】" + transactionEditInput.DocNumber + "【物料代码】"+transactionEditInput.ItemCode+"【数量】" + transactionEditInput.Qty + " 】 ";
}
variableTransactionEditInput.Remark = docNumber;
}
await Task.CompletedTask.ConfigureAwait(false);
await TransactionAppService.AddManyAsync(transactionEditInputs).ConfigureAwait(false);
}
private List<TransactionEditInput> BuildTransactions(BackFlushNote backFlushNote)
private async Task<List<TransactionEditInput>> BuildTransactionsAsync(BackFlushNote backFlushNote)
{
var transactions = new List<TransactionEditInput>();
//构造库存转移记录创建Input
@ -77,7 +117,9 @@ public class BackFlushNoteEventHandler
transactions.Add(transaction);
}
return transactions;
await Task.CompletedTask.ConfigureAwait(false);
return transactions;
}
}

56
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs

@ -15,15 +15,16 @@ namespace Win_in.Sfs.Wms.Store.Event.Transactions;
public class ProductReceiptNoteEventHandler
: StoreInventoryEventHandlerBase
, ILocalEventHandler<SfsCreatedEntityEventData<ProductReceiptNote>>
, ILocalEventHandler<SfsCreatedEntityEventData<List<ProductReceiptNote>>>
, ILocalEventHandler<SfsCreatedEntityEventData<ProductReceiptNote>>
, ILocalEventHandler<SfsCreatedEntityEventData<List<ProductReceiptNote>>>
{
private const EnumTransInOut TransInOut = EnumTransInOut.In;
private const EnumTransType TransType = EnumTransType.ProductReceipt;
private readonly IItemBasicAppService _itemBasicAppService;
private readonly ILocationAppService _locationAppService;
public ProductReceiptNoteEventHandler(IItemBasicAppService itemBasicAppService, ILocationAppService locationAppService)
public ProductReceiptNoteEventHandler(IItemBasicAppService itemBasicAppService,
ILocationAppService locationAppService)
{
_itemBasicAppService = itemBasicAppService;
_locationAppService = locationAppService;
@ -34,17 +35,15 @@ public class ProductReceiptNoteEventHandler
{
var entity = eventData.Entity;
await AddTransactionsAsync(entity).ConfigureAwait(false);
}
private async Task AddTransactionsAsync(ProductReceiptNote productReceiptNote)
{
var inboundTransactions = new List<TransactionEditInput>();
inboundTransactions.AddRange(await BuildTransactions(productReceiptNote));
inboundTransactions.AddRange(await BuildTransactionsAsync(productReceiptNote).ConfigureAwait(false));
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
}
[UnitOfWork]
@ -56,19 +55,48 @@ public class ProductReceiptNoteEventHandler
private async Task AddTransactionsAsync(List<ProductReceiptNote> productReceiptNotes)
{
var inboundTransactions = new List<TransactionEditInput>();
//如果要做库存事务汇总,可以修改此处
foreach (var productReceiptNote in productReceiptNotes)
{
inboundTransactions.AddRange(await BuildTransactions(productReceiptNote));
inboundTransactions.AddRange(await BuildTransactionsAsync(productReceiptNote).ConfigureAwait(false));
}
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
var transactionEditInputs = inboundTransactions.GroupBy(p => new
{
p.ItemCode,
p.LocationCode,
p.Status,
p.PackingCode,
p.Lot
}).Select(p => p.FirstOrDefault()).ToList();
foreach (var variableTransactionEditInput in transactionEditInputs)
{
var sameList=inboundTransactions.Where(p =>
p.ItemCode == variableTransactionEditInput.ItemCode &&
p.LocationCode == variableTransactionEditInput.LocationCode &&
p.Status == variableTransactionEditInput.Status &&
p.Lot == variableTransactionEditInput.Lot &&
p.PackingCode == variableTransactionEditInput.PackingCode)
.ToList();
variableTransactionEditInput.Qty= sameList
.Sum(p => p.Qty);
var docNumber = string.Empty;
foreach (var transactionEditInput in sameList)
{
docNumber += "----【单据号】" + transactionEditInput.DocNumber + "【物料代码】" + transactionEditInput.ItemCode + "【数量】" + transactionEditInput.Qty + " 】 ";
}
variableTransactionEditInput.Remark = docNumber;
}
await TransactionAppService.AddManyAsync(transactionEditInputs).ConfigureAwait(false);
}
private async Task<List<TransactionEditInput>> BuildTransactions(ProductReceiptNote productReceiptNote)
private async Task<List<TransactionEditInput>> BuildTransactionsAsync(ProductReceiptNote productReceiptNote)
{
var transactionCreateInputs = new List<TransactionEditInput>();
//构造库存入库创建Input
@ -76,7 +104,7 @@ public class ProductReceiptNoteEventHandler
{
var transaction = ObjectMapper.Map<ProductReceiptNoteDetail, TransactionEditInput>(detail);
var itemBasicDto= await _itemBasicAppService.GetByCodeAsync(detail.ItemCode).ConfigureAwait(false);
var itemBasicDto = await _itemBasicAppService.GetByCodeAsync(detail.ItemCode).ConfigureAwait(false);
if (itemBasicDto == null)
{
@ -86,8 +114,8 @@ public class ProductReceiptNoteEventHandler
detail.ItemDesc1 = itemBasicDto.Desc1;
detail.ItemDesc2 = itemBasicDto.Desc2;
detail.ItemName=itemBasicDto.Name;
detail.StdPackQty=itemBasicDto.StdPackQty;
detail.ItemName = itemBasicDto.Name;
detail.StdPackQty = itemBasicDto.StdPackQty;
transaction.TransType = TransType;
transaction.TransInOut = TransInOut;
@ -98,7 +126,7 @@ public class ProductReceiptNoteEventHandler
transactionCreateInputs.Add(transaction);
}
return transactionCreateInputs;
}
}

74
build/src/docker/publish/conf/settings/appsettings.Development.json

@ -54,44 +54,44 @@
"UseAuth": "true"
},
// "ConnectionStrings": {
// "AbpAuditLogging": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpBackgroundJobs": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpBlobStoring": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpFeatureManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpIdentity": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpIdentityServer": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpPermissionManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpSettingManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "AbpTenantManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Auth": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Basedata": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "DataExchange": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "FileStorage": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Inventory": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Job": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Label": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Message": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;",
// "Store": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=6000;"
// "AbpAuditLogging": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpBackgroundJobs": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpBlobStoring": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpFeatureManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpIdentity": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpIdentityServer": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpPermissionManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpSettingManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "AbpTenantManagement": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Auth": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Basedata": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "DataExchange": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "FileStorage": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Inventory": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Job": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Label": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Message": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;",
// "Store": "Server=localhost,21195;Database=Wms;Uid=sa;Pwd=aA123456!;timeout=60000;Encrypt=False;"
// },
"ConnectionStrings": {
"AbpAuditLogging": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpBackgroundJobs": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpBlobStoring": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpFeatureManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpIdentity": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpIdentityServer": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpPermissionManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpSettingManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"AbpTenantManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Auth": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Basedata": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"DataExchange": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"FileStorage": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Inventory": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Job": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Label": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Message": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;",
"Store": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=6000;"
"AbpAuditLogging": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpBackgroundJobs": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpBlobStoring": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpFeatureManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpIdentity": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpIdentityServer": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpPermissionManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpSettingManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"AbpTenantManagement": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Auth": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Basedata": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"DataExchange": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"FileStorage": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Inventory": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Job": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Label": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Message": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;",
"Store": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main;uid=ccwin-in;pwd=Microsoft@2022;timeout=60000;Encrypt=False;"
},
"IdentityClients": {
"Default": {
@ -114,7 +114,7 @@
"BaseUrl": "http://dev.ccwin-in.com:60083/"
},
"BaseData": {
"BaseUrl": "http://dev.ccwin-in.com:60084/"
"BaseUrl": "http://localhost:59094/"
},
"Default": {
"BaseUrl": "http://dev.ccwin-in.com:60083/"

Loading…
Cancel
Save