merge
This commit is contained in:
commit
04a1526d46
|
|
@ -0,0 +1,49 @@
|
||||||
|
using FruitBank.Common.Interfaces;
|
||||||
|
using LinqToDB.Mapping;
|
||||||
|
using Mango.Nop.Core.Dtos;
|
||||||
|
using Mango.Nop.Core.Entities;
|
||||||
|
using Mango.Nop.Core.Interfaces;
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
using Nop.Core.Domain.Catalog;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace FruitBank.Common.Dtos
|
||||||
|
{
|
||||||
|
public class StockQuantityHistoryDto : MgStockQuantityHistoryDto<ProductDto>, IStockQuantityHistoryDto
|
||||||
|
{
|
||||||
|
[NotColumn, JsonIgnore, System.Text.Json.Serialization.JsonIgnore]
|
||||||
|
public int? StockQuantityHistoryId
|
||||||
|
{
|
||||||
|
get => StockQuantityHistoryExt?.StockQuantityHistoryId;
|
||||||
|
set => StockQuantityHistoryExt!.StockQuantityHistoryId = value!.Value;
|
||||||
|
}
|
||||||
|
|
||||||
|
[NotColumn, JsonIgnore, System.Text.Json.Serialization.JsonIgnore]
|
||||||
|
public double? NetWeightAdjustment
|
||||||
|
{
|
||||||
|
get => StockQuantityHistoryExt?.NetWeightAdjustment;
|
||||||
|
set => StockQuantityHistoryExt!.NetWeightAdjustment = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
[NotColumn, JsonIgnore, System.Text.Json.Serialization.JsonIgnore]
|
||||||
|
public double? NetWeight
|
||||||
|
{
|
||||||
|
get => StockQuantityHistoryExt?.NetWeight;
|
||||||
|
set => StockQuantityHistoryExt!.NetWeight = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
[NotColumn, JsonIgnore, System.Text.Json.Serialization.JsonIgnore]
|
||||||
|
public bool IsInconsistent
|
||||||
|
{
|
||||||
|
get => StockQuantityHistoryExt?.IsInconsistent ?? false;
|
||||||
|
set => StockQuantityHistoryExt!.IsInconsistent = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
[Association(ThisKey = nameof(Id), OtherKey = nameof(StockQuantityHistoryExt.StockQuantityHistoryId), CanBeNull = true)]
|
||||||
|
public StockQuantityHistoryExt? StockQuantityHistoryExt { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
using AyCode.Interfaces.Entities;
|
||||||
|
using AyCode.Interfaces.TimeStampInfo;
|
||||||
|
using FruitBank.Common;
|
||||||
|
using FruitBank.Common.Interfaces;
|
||||||
|
using LinqToDB;
|
||||||
|
using LinqToDB.Mapping;
|
||||||
|
using Nop.Core.Domain.Catalog;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Mango.Nop.Core.Entities
|
||||||
|
{
|
||||||
|
public interface IStockQuantityHistoryExt : IEntityInt
|
||||||
|
{
|
||||||
|
public int StockQuantityHistoryId { get; set; }
|
||||||
|
public double? NetWeightAdjustment { get; set; }
|
||||||
|
public double? NetWeight { get; set; }
|
||||||
|
public bool IsInconsistent { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[Table(Name = FruitBankConstClient.StockQuantityHistoryExtDbTableName)]
|
||||||
|
[System.ComponentModel.DataAnnotations.Schema.Table(FruitBankConstClient.StockQuantityHistoryExtDbTableName)]
|
||||||
|
public class StockQuantityHistoryExt : MgEntityBase, IStockQuantityHistoryExt
|
||||||
|
{
|
||||||
|
public int StockQuantityHistoryId { get; set; }
|
||||||
|
|
||||||
|
[Column(DataType = DataType.DecFloat, CanBeNull = true)]
|
||||||
|
public double? NetWeightAdjustment { get; set; }
|
||||||
|
|
||||||
|
[Column(DataType = DataType.DecFloat, CanBeNull = true)]
|
||||||
|
public double? NetWeight { get; set; }
|
||||||
|
|
||||||
|
public bool IsInconsistent { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -35,6 +35,9 @@ public static class FruitBankConstClient
|
||||||
public const string ShippingItemPalletDbTableName = "fbShippingItemPallet";
|
public const string ShippingItemPalletDbTableName = "fbShippingItemPallet";
|
||||||
public const string ShippingDocumentDbTableName = "fbShippingDocument";
|
public const string ShippingDocumentDbTableName = "fbShippingDocument";
|
||||||
public const string ShippingDocumentToFilesDbTableName = "fbShippingDocumentToFiles";
|
public const string ShippingDocumentToFilesDbTableName = "fbShippingDocumentToFiles";
|
||||||
|
|
||||||
|
public const string StockQuantityHistoryExtDbTableName = "fbStockQuantityHistoryExt";
|
||||||
|
|
||||||
|
|
||||||
//public static Guid[] DevAdminIds = new Guid[2] { Guid.Parse("dcf451d2-cc4c-4ac2-8c1f-da00041be1fd"), Guid.Parse("4cbaed43-2465-4d99-84f1-c8bc6b7025f7") };
|
//public static Guid[] DevAdminIds = new Guid[2] { Guid.Parse("dcf451d2-cc4c-4ac2-8c1f-da00041be1fd"), Guid.Parse("4cbaed43-2465-4d99-84f1-c8bc6b7025f7") };
|
||||||
//public static Guid[] SysAdmins = new Guid[3]
|
//public static Guid[] SysAdmins = new Guid[3]
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,9 @@ public interface IFruitBankDataControllerCommon
|
||||||
//public Task<List<MeasuringProductDto>?> GetAllMeasuringProductDtos();
|
//public Task<List<MeasuringProductDto>?> GetAllMeasuringProductDtos();
|
||||||
public Task<ProductDto?> GetProductDtoById(int productId);
|
public Task<ProductDto?> GetProductDtoById(int productId);
|
||||||
|
|
||||||
|
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtos();
|
||||||
|
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtosByProductId(int productId);
|
||||||
|
|
||||||
#endregion Product
|
#endregion Product
|
||||||
|
|
||||||
Task<MgLoginModelResponse?> LoginMeasuringUser(MgLoginModelRequest loginModelRequest);
|
Task<MgLoginModelResponse?> LoginMeasuringUser(MgLoginModelRequest loginModelRequest);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
using FruitBank.Common.Dtos;
|
||||||
|
using Mango.Nop.Core.Dtos;
|
||||||
|
using Mango.Nop.Core.Entities;
|
||||||
|
using Mango.Nop.Core.Interfaces;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace FruitBank.Common.Interfaces
|
||||||
|
{
|
||||||
|
public interface IStockQuantityHistoryDto : IMgTStockQuantityHistoryDto<ProductDto>//, IStockQuantityHistoryExt
|
||||||
|
{
|
||||||
|
public int? StockQuantityHistoryId { get; set; }
|
||||||
|
public double? NetWeightAdjustment { get; set; }
|
||||||
|
public double? NetWeight { get; set; }
|
||||||
|
public bool IsInconsistent { get; set; }
|
||||||
|
|
||||||
|
public StockQuantityHistoryExt? StockQuantityHistoryExt { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -72,6 +72,9 @@ public class SignalRTags : AcSignalRTags
|
||||||
public const int AddOrUpdateMeasuredOrderItemPallet = 137;
|
public const int AddOrUpdateMeasuredOrderItemPallet = 137;
|
||||||
public const int AddOrUpdateMeasuredOrderItemPallets = 138;
|
public const int AddOrUpdateMeasuredOrderItemPallets = 138;
|
||||||
|
|
||||||
|
public const int GetStockQuantityHistoryDtos = 150;
|
||||||
|
public const int GetStockQuantityHistoryDtosByProductId = 151;
|
||||||
|
|
||||||
public const int AuthenticateUser = 195;
|
public const int AuthenticateUser = 195;
|
||||||
public const int RefreshToken = 200;
|
public const int RefreshToken = 200;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ public sealed class OrderClientTests
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
public async Task GetPendingOrderDtosForMeasuring()
|
public async Task GetPendingOrderDtosForMeasuring()
|
||||||
{
|
{
|
||||||
var orderDtosForMeasuring = await _signalRClient.GetPendingOrderDtosForMeasuring(999);
|
var orderDtosForMeasuring = await _signalRClient.GetPendingOrderDtosForMeasuring(9999);
|
||||||
|
|
||||||
Assert.IsNotNull(orderDtosForMeasuring);
|
Assert.IsNotNull(orderDtosForMeasuring);
|
||||||
//Assert.IsTrue(orderDtosForMeasuring.Any(x=>x.Id ==51));
|
//Assert.IsTrue(orderDtosForMeasuring.Any(x=>x.Id ==51));
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,12 @@
|
||||||
<GridDetailOrderItemPallets OrderItemPallets="orderItemPalletDtos" IsMasterGrid="false"/>
|
<GridDetailOrderItemPallets OrderItemPallets="orderItemPalletDtos" IsMasterGrid="false"/>
|
||||||
}
|
}
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Rendelés jegyzetek">
|
||||||
|
@{
|
||||||
|
// var orderItemPalletDtos = orderDto?.OrderItemDtos.SelectMany(oi => oi.OrderItemPallets).ToList() ?? [];
|
||||||
|
// <GridDetailOrderItemPallets OrderItemPallets="orderItemPalletDtos" IsMasterGrid="false" />
|
||||||
|
}
|
||||||
|
</DxTabPage>
|
||||||
</DxTabs>
|
</DxTabs>
|
||||||
}
|
}
|
||||||
</DetailRowTemplate>
|
</DetailRowTemplate>
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
@using DevExpress.Internal.About
|
@using DevExpress.Internal.About
|
||||||
@using FruitBank.Common.Dtos
|
@using FruitBank.Common.Dtos
|
||||||
@using FruitBank.Common.Models
|
@using FruitBank.Common.Models
|
||||||
|
@using FruitBankHybrid.Shared.Components.Grids.Products
|
||||||
@using FruitBankHybrid.Shared.Components.Toolbars
|
@using FruitBankHybrid.Shared.Components.Toolbars
|
||||||
@using FruitBankHybrid.Shared.Databases
|
@using FruitBankHybrid.Shared.Databases
|
||||||
@using FruitBankHybrid.Shared.Services.SignalRs
|
@using FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
@ -30,7 +31,7 @@
|
||||||
{
|
{
|
||||||
var productId = ((ProductDto)context.DataItem).Id;
|
var productId = ((ProductDto)context.DataItem).Id;
|
||||||
|
|
||||||
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i, productId)" >
|
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i, productId)">
|
||||||
<DxTabPage Text="Rendelések melyben megtalálható">
|
<DxTabPage Text="Rendelések melyben megtalálható">
|
||||||
@{
|
@{
|
||||||
//GetOrderDtosFromDbAsync(productId).Forget();
|
//GetOrderDtosFromDbAsync(productId).Forget();
|
||||||
|
|
@ -44,7 +45,15 @@
|
||||||
//var orderItemDtos = _orderItemDtos?.Where(oi => oi.ProductId == productId).ToList() ?? [];
|
//var orderItemDtos = _orderItemDtos?.Where(oi => oi.ProductId == productId).ToList() ?? [];
|
||||||
<GridDetailOrderItemDto OrderItemDtos="_currentOrderItemDtos" IsMasterGrid="false" />
|
<GridDetailOrderItemDto OrderItemDtos="_currentOrderItemDtos" IsMasterGrid="false" />
|
||||||
}
|
}
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Készlet mennyiség változások">
|
||||||
|
@{
|
||||||
|
//GetOrderItemDtosFromDbAsync(productId).Forget();
|
||||||
|
//var orderItemDtos = _orderItemDtos?.Where(oi => oi.ProductId == productId).ToList() ?? [];
|
||||||
|
|
||||||
|
var contextIds = new[] { (object)((ProductDto)(context.DataItem)).Id };
|
||||||
|
<GridStockQuantityHistoryDtoTemplate ContextIds="@(contextIds)" IsMasterGrid="false" />
|
||||||
|
}
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
</DxTabs>
|
</DxTabs>
|
||||||
}
|
}
|
||||||
|
|
@ -52,7 +61,7 @@
|
||||||
<ToolbarTemplate>
|
<ToolbarTemplate>
|
||||||
@if (IsMasterGrid)
|
@if (IsMasterGrid)
|
||||||
{
|
{
|
||||||
<FruitBankToolbarTemplate Grid="Grid" OnReloadDataClick="() => ReloadDataFromDb(true)" />
|
<FruitBankToolbarTemplate Grid="Grid" OnReloadDataClick="() => ReloadDataFromDb(true)"/>
|
||||||
}
|
}
|
||||||
</ToolbarTemplate>
|
</ToolbarTemplate>
|
||||||
</GridProductDto>
|
</GridProductDto>
|
||||||
|
|
@ -70,6 +79,7 @@
|
||||||
|
|
||||||
private readonly Dictionary<int, List<OrderDto>> _orderDtosByProductId = new();
|
private readonly Dictionary<int, List<OrderDto>> _orderDtosByProductId = new();
|
||||||
private readonly Dictionary<int, List<OrderItemDto>> _orderItemDtosByProductId = new();
|
private readonly Dictionary<int, List<OrderItemDto>> _orderItemDtosByProductId = new();
|
||||||
|
|
||||||
public GridProductDto Grid { get; set; }
|
public GridProductDto Grid { get; set; }
|
||||||
|
|
||||||
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
||||||
|
|
@ -147,7 +157,7 @@
|
||||||
protected async Task OnActiveTabChanged(int activeTabIndex, int productId)
|
protected async Task OnActiveTabChanged(int activeTabIndex, int productId)
|
||||||
{
|
{
|
||||||
_activeTabIndex = activeTabIndex;
|
_activeTabIndex = activeTabIndex;
|
||||||
|
|
||||||
switch (_activeTabIndex)
|
switch (_activeTabIndex)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
@using FruitBank.Common.Dtos
|
@using FruitBank.Common.Dtos
|
||||||
@using FruitBank.Common.Entities
|
@using FruitBank.Common.Entities
|
||||||
@using FruitBankHybrid.Shared.Components.FileUploads
|
@using FruitBankHybrid.Shared.Components.FileUploads
|
||||||
|
@using FruitBankHybrid.Shared.Components.Toolbars
|
||||||
@using FruitBankHybrid.Shared.Databases
|
@using FruitBankHybrid.Shared.Databases
|
||||||
@using FruitBankHybrid.Shared.Services.SignalRs
|
@using FruitBankHybrid.Shared.Services.SignalRs
|
||||||
@using System.Text
|
@using System.Text
|
||||||
|
|
@ -19,13 +20,13 @@
|
||||||
<DxGridDataColumn FieldName="PartnerId" Caption="Partner">
|
<DxGridDataColumn FieldName="PartnerId" Caption="Partner">
|
||||||
<EditSettings>
|
<EditSettings>
|
||||||
<DxComboBoxSettings Data="Partners"
|
<DxComboBoxSettings Data="Partners"
|
||||||
ValueFieldName="Id"
|
ValueFieldName="Id"
|
||||||
TextFieldName="Name"
|
TextFieldName="Name"
|
||||||
DropDownBodyCssClass="dd-body-class"
|
DropDownBodyCssClass="dd-body-class"
|
||||||
ListRenderMode="ListRenderMode.Entire"
|
ListRenderMode="ListRenderMode.Entire"
|
||||||
SearchMode="ListSearchMode.AutoSearch"
|
SearchMode="ListSearchMode.AutoSearch"
|
||||||
SearchFilterCondition="ListSearchFilterCondition.Contains"
|
SearchFilterCondition="ListSearchFilterCondition.Contains"
|
||||||
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto">
|
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto">
|
||||||
<Columns>
|
<Columns>
|
||||||
<DxListEditorColumn FieldName="@nameof(Partner.Id)" />
|
<DxListEditorColumn FieldName="@nameof(Partner.Id)" />
|
||||||
<DxListEditorColumn FieldName="@nameof(Partner.Name)" />
|
<DxListEditorColumn FieldName="@nameof(Partner.Name)" />
|
||||||
|
|
@ -44,11 +45,11 @@
|
||||||
SearchMode="ListSearchMode.AutoSearch"
|
SearchMode="ListSearchMode.AutoSearch"
|
||||||
SearchFilterCondition="ListSearchFilterCondition.Contains"
|
SearchFilterCondition="ListSearchFilterCondition.Contains"
|
||||||
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto">
|
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto">
|
||||||
<Columns>
|
<Columns>
|
||||||
<DxListEditorColumn FieldName="@nameof(Shipping.Id)" />
|
<DxListEditorColumn FieldName="@nameof(Shipping.Id)" />
|
||||||
<DxListEditorColumn FieldName="@nameof(Shipping.ShippingDate)"/>
|
<DxListEditorColumn FieldName="@nameof(Shipping.ShippingDate)" />
|
||||||
<DxListEditorColumn FieldName="@nameof(Shipping.LicencePlate)" />
|
<DxListEditorColumn FieldName="@nameof(Shipping.LicencePlate)" />
|
||||||
</Columns>
|
</Columns>
|
||||||
</DxComboBoxSettings>
|
</DxComboBoxSettings>
|
||||||
</EditSettings>
|
</EditSettings>
|
||||||
</DxGridDataColumn>
|
</DxGridDataColumn>
|
||||||
|
|
@ -58,11 +59,11 @@
|
||||||
<DxGridDataColumn FieldName="Country" />
|
<DxGridDataColumn FieldName="Country" />
|
||||||
|
|
||||||
<DxGridDataColumn FieldName="TotalPallets" />
|
<DxGridDataColumn FieldName="TotalPallets" />
|
||||||
<DxGridDataColumn FieldName="IsAllMeasured" ReadOnly="true"/>
|
<DxGridDataColumn FieldName="IsAllMeasured" ReadOnly="true" />
|
||||||
<DxGridDataColumn FieldName="Comment" />
|
<DxGridDataColumn FieldName="Comment" />
|
||||||
<DxGridDataColumn FieldName="PdfFileName" />
|
<DxGridDataColumn FieldName="PdfFileName" />
|
||||||
<DxGridDataColumn FieldName="Created"ReadOnly="true" />
|
<DxGridDataColumn FieldName="Created" ReadOnly="true" />
|
||||||
<DxGridDataColumn FieldName="Modified" ReadOnly="true"/>
|
<DxGridDataColumn FieldName="Modified" ReadOnly="true" />
|
||||||
<DxGridCommandColumn Visible="!IsMasterGrid" Width="120"></DxGridCommandColumn>
|
<DxGridCommandColumn Visible="!IsMasterGrid" Width="120"></DxGridCommandColumn>
|
||||||
</Columns>
|
</Columns>
|
||||||
<DetailRowTemplate>
|
<DetailRowTemplate>
|
||||||
|
|
@ -87,31 +88,20 @@
|
||||||
<ToolbarTemplate>
|
<ToolbarTemplate>
|
||||||
@if (IsMasterGrid)
|
@if (IsMasterGrid)
|
||||||
{
|
{
|
||||||
<DxToolbar ItemRenderStyleMode="ToolbarRenderStyleMode.Plain">
|
<FruitBankToolbarTemplate Grid="Grid" OnReloadDataClick="() => ReloadDataFromDb(true)">
|
||||||
<DxToolbarItem Text="New" Click="NewItem_Click" IconCssClass="grid-toolbar-new" />
|
<ToolbarItemsExtended>
|
||||||
<DxToolbarItem Text="Edit" Click="EditItem_Click" IconCssClass="grid-toolbar-edit" Enabled="EditItemsEnabled" />
|
<DxToolbarItem BeginGroup="true">
|
||||||
<DxToolbarItem Text="Delete" Click="DeleteItem_Click" IconCssClass="grid-toolbar-delete" Enabled="EditItemsEnabled" />
|
<Template Context="ctxToolbarItemFileUpload">
|
||||||
<DxToolbarItem Text="Column Chooser" BeginGroup="true" Click="ColumnChooserItem_Click" IconCssClass="grid-toolbar-column-chooser" />
|
@* <DxUpload Name="myFile"
|
||||||
<DxToolbarItem Text="Export" IconCssClass="grid-toolbar-export">
|
|
||||||
<Items>
|
|
||||||
<DxToolbarItem Text="To CSV" Click="ExportCsvItem_Click" />
|
|
||||||
<DxToolbarItem Text="To XLSX" Click="ExportXlsxItem_Click" />
|
|
||||||
<DxToolbarItem Text="To XLS" Click="ExportXlsItem_Click" />
|
|
||||||
<DxToolbarItem Text="To PDF" Click="ExportPdfItem_Click" />
|
|
||||||
</Items>
|
|
||||||
</DxToolbarItem>
|
|
||||||
<DxToolbarItem BeginGroup="true">
|
|
||||||
<Template Context="ctxToolbarItemFileUpload">
|
|
||||||
@* <DxUpload Name="myFile"
|
|
||||||
UploadMode="@UploadMode.Instant"
|
UploadMode="@UploadMode.Instant"
|
||||||
AllowMultiFileUpload="false"
|
AllowMultiFileUpload="false"
|
||||||
ShowSelectButton="true"
|
ShowSelectButton="true"
|
||||||
MaxFileSize="15000000">
|
MaxFileSize="15000000">
|
||||||
</DxUpload> *@
|
</DxUpload> *@
|
||||||
<FileUpload OnFileUploaded="OnFileUploaded"></FileUpload>
|
<FileUpload OnFileUploaded="OnFileUploaded"></FileUpload>
|
||||||
</Template>
|
</Template>
|
||||||
</DxToolbarItem>
|
</DxToolbarItem>
|
||||||
@* <DxToolbarItem BeginGroup="true">
|
@* <DxToolbarItem BeginGroup="true">
|
||||||
<Template Context="toolbar_item_context">
|
<Template Context="toolbar_item_context">
|
||||||
<DxSearchBox @bind-Text="GridSearchText"
|
<DxSearchBox @bind-Text="GridSearchText"
|
||||||
BindValueMode="BindValueMode.OnInput"
|
BindValueMode="BindValueMode.OnInput"
|
||||||
|
|
@ -119,7 +109,8 @@
|
||||||
aria-label="Search" />
|
aria-label="Search" />
|
||||||
</Template>
|
</Template>
|
||||||
</DxToolbarItem>*@
|
</DxToolbarItem>*@
|
||||||
</DxToolbar>
|
</ToolbarItemsExtended>
|
||||||
|
</FruitBankToolbarTemplate>
|
||||||
}
|
}
|
||||||
</ToolbarTemplate>
|
</ToolbarTemplate>
|
||||||
<GroupSummary>
|
<GroupSummary>
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,8 @@ ValidationEnabled="false" EditMode="GridEditMode.EditRow"
|
||||||
EditModelSaving="Grid_EditModelSaving"
|
EditModelSaving="Grid_EditModelSaving"
|
||||||
FocusedRowChanged="Grid_FocusedRowChanged" *@
|
FocusedRowChanged="Grid_FocusedRowChanged" *@
|
||||||
|
|
||||||
<GridShippingItemBase @ref="Grid" IsMasterGrid="IsMasterGrid" DataSource="ShippingItems" AutoSaveLayoutName="GridShippingItem"
|
<GridShippingItem @ref="Grid" IsMasterGrid="IsMasterGrid" DataSource="ShippingItems" AutoSaveLayoutName="GridShippingItem"
|
||||||
SignalRClient="FruitBankSignalRClient" Logger="_logger"
|
SignalRClient="FruitBankSignalRClient" Logger="_logger"
|
||||||
CssClass="@GridCss" ValidationEnabled="false" EditMode="GridEditMode.EditRow"
|
CssClass="@GridCss" ValidationEnabled="false" EditMode="GridEditMode.EditRow"
|
||||||
FocusedRowChanged="Grid_FocusedRowChanged">
|
FocusedRowChanged="Grid_FocusedRowChanged">
|
||||||
@* <MgGridBase Data="ShippingItems" IsMasterGrid="IsMasterGrid" CssClass="@GridCss" AutoSaveLayoutName="GridShippingItem"
|
@* <MgGridBase Data="ShippingItems" IsMasterGrid="IsMasterGrid" CssClass="@GridCss" AutoSaveLayoutName="GridShippingItem"
|
||||||
|
|
@ -32,7 +32,7 @@ FocusedRowChanged="Grid_FocusedRowChanged" *@
|
||||||
<EditSettings>
|
<EditSettings>
|
||||||
<DxComboBoxSettings Data="ShippingDocuments"
|
<DxComboBoxSettings Data="ShippingDocuments"
|
||||||
ValueFieldName="Id"
|
ValueFieldName="Id"
|
||||||
TextFieldName="@("Partner.Name")"
|
TextFieldName="@nameof(ShippingDocument.PdfFileName)"
|
||||||
DropDownBodyCssClass="dd-body-class"
|
DropDownBodyCssClass="dd-body-class"
|
||||||
ListRenderMode="ListRenderMode.Entire"
|
ListRenderMode="ListRenderMode.Entire"
|
||||||
SearchMode="ListSearchMode.AutoSearch"
|
SearchMode="ListSearchMode.AutoSearch"
|
||||||
|
|
@ -114,7 +114,7 @@ FocusedRowChanged="Grid_FocusedRowChanged" *@
|
||||||
FieldName="MeasuredNetWeight"
|
FieldName="MeasuredNetWeight"
|
||||||
FooterColumnName="NetWeight" />
|
FooterColumnName="NetWeight" />
|
||||||
</GroupSummary>
|
</GroupSummary>
|
||||||
</GridShippingItemBase>
|
</GridShippingItem>
|
||||||
@* </MgGridBase> *@
|
@* </MgGridBase> *@
|
||||||
|
|
||||||
@code {
|
@code {
|
||||||
|
|
@ -130,13 +130,13 @@ FocusedRowChanged="Grid_FocusedRowChanged" *@
|
||||||
string GridCss => !IsMasterGrid ? "hide-toolbar" : string.Empty;
|
string GridCss => !IsMasterGrid ? "hide-toolbar" : string.Empty;
|
||||||
|
|
||||||
const string ExportFileName = "ExportResult";
|
const string ExportFileName = "ExportResult";
|
||||||
string _localStorageKey = "GridShippingDocument_";
|
string _localStorageKey = "GridShippingItem_";
|
||||||
|
|
||||||
string GridSearchText = "";
|
string GridSearchText = "";
|
||||||
bool EditItemsEnabled { get; set; } = true;
|
bool EditItemsEnabled { get; set; } = true;
|
||||||
int FocusedRowVisibleIndex { get; set; }
|
int FocusedRowVisibleIndex { get; set; }
|
||||||
|
|
||||||
public GridShippingItemBase Grid { get; set; }
|
public GridShippingItem Grid { get; set; }
|
||||||
private LoggerClient<GridShippingItemTemplate> _logger;
|
private LoggerClient<GridShippingItemTemplate> _logger;
|
||||||
|
|
||||||
protected override async Task OnInitializedAsync()
|
protected override async Task OnInitializedAsync()
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ public class FruitBankListGridBase<TDataItem> : MgGridBase<SignalRDataSourceList
|
||||||
//VirtualScrollingEnabled = IsMasterGrid;
|
//VirtualScrollingEnabled = IsMasterGrid;
|
||||||
PageSizeSelectorVisible = true;
|
PageSizeSelectorVisible = true;
|
||||||
|
|
||||||
if (IsMasterGrid && !AutoSaveLayoutName.IsNullOrWhiteSpace())
|
if (!AutoSaveLayoutName.IsNullOrWhiteSpace())
|
||||||
{
|
{
|
||||||
LayoutAutoLoading = Grid_LayoutAutoLoading;
|
LayoutAutoLoading = Grid_LayoutAutoLoading;
|
||||||
LayoutAutoSaving = Grid_LayoutAutoSaving;
|
LayoutAutoSaving = Grid_LayoutAutoSaving;
|
||||||
|
|
@ -129,12 +129,14 @@ public class FruitBankListGridBase<TDataItem> : MgGridBase<SignalRDataSourceList
|
||||||
|
|
||||||
async Task Grid_LayoutAutoLoading(GridPersistentLayoutEventArgs e)
|
async Task Grid_LayoutAutoLoading(GridPersistentLayoutEventArgs e)
|
||||||
{
|
{
|
||||||
e.Layout = await LoadLayoutFromLocalStorageAsync($"{AutoSaveLayoutName}_AutoSave_{LoggedInModel.CustomerDto?.Id ?? 0}");
|
var masterDetailName = IsMasterGrid ? "Master" : "Detail";
|
||||||
|
e.Layout = await LoadLayoutFromLocalStorageAsync($"{AutoSaveLayoutName}_{masterDetailName}_AutoSave_{LoggedInModel.CustomerDto?.Id ?? 0}");
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task Grid_LayoutAutoSaving(GridPersistentLayoutEventArgs e)
|
private async Task Grid_LayoutAutoSaving(GridPersistentLayoutEventArgs e)
|
||||||
{
|
{
|
||||||
await SaveLayoutToLocalStorageAsync(e.Layout, $"{AutoSaveLayoutName}_AutoSave_{LoggedInModel.CustomerDto?.Id ?? 0}");
|
var masterDetailName = IsMasterGrid ? "Master" : "Detail";
|
||||||
|
await SaveLayoutToLocalStorageAsync(e.Layout, $"{AutoSaveLayoutName}_{masterDetailName}_AutoSave_{LoggedInModel.CustomerDto?.Id ?? 0}");
|
||||||
}
|
}
|
||||||
|
|
||||||
async Task<GridPersistentLayout?> LoadLayoutFromLocalStorageAsync(string localStorageKey)
|
async Task<GridPersistentLayout?> LoadLayoutFromLocalStorageAsync(string localStorageKey)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
using AyCode.Core.Interfaces;
|
||||||
|
using DevExpress.Blazor;
|
||||||
|
using FruitBank.Common.Dtos;
|
||||||
|
using FruitBank.Common.Entities;
|
||||||
|
using FruitBank.Common.SignalRs;
|
||||||
|
using FruitBankHybrid.Shared.Pages;
|
||||||
|
using Microsoft.AspNetCore.Components;
|
||||||
|
|
||||||
|
namespace FruitBankHybrid.Shared.Components.Grids.ShippingItems;
|
||||||
|
|
||||||
|
public class GridStockQuantityHistoryDto : FruitBankListGridBase<StockQuantityHistoryDto>, IGrid
|
||||||
|
{
|
||||||
|
public GridStockQuantityHistoryDto() : base()
|
||||||
|
{
|
||||||
|
if (IsMasterGrid) GetAllMessageTag = SignalRTags.GetStockQuantityHistoryDtos;
|
||||||
|
else GetAllMessageTag = SignalRTags.GetStockQuantityHistoryDtosByProductId;
|
||||||
|
|
||||||
|
//AddMessageTag = SignalRTags.AddShippingItem;
|
||||||
|
//UpdateMessageTag = SignalRTags.UpdateShippingItem;
|
||||||
|
//RemoveMessageTag = SignalRTags.;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Task SetParametersAsyncCore(ParameterView parameters)
|
||||||
|
{
|
||||||
|
if (!IsFirstInitializeParameters)
|
||||||
|
{
|
||||||
|
//ShowFilterRow = true;
|
||||||
|
//ShowGroupPanel = true;
|
||||||
|
//AllowSort = false;
|
||||||
|
|
||||||
|
//etc...
|
||||||
|
}
|
||||||
|
|
||||||
|
return base.SetParametersAsyncCore(parameters);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,96 @@
|
||||||
|
@using AyCode.Core.Loggers;
|
||||||
|
@using AyCode.Core.Extensions
|
||||||
|
@using AyCode.Core.Helpers
|
||||||
|
@using AyCode.Utils.Extensions
|
||||||
|
@using FruitBank.Common.Dtos
|
||||||
|
@using FruitBank.Common.Entities
|
||||||
|
@using FruitBankHybrid.Shared.Components.Grids.ShippingItems
|
||||||
|
@using FruitBankHybrid.Shared.Components.Toolbars
|
||||||
|
@using FruitBankHybrid.Shared.Databases
|
||||||
|
@using FruitBankHybrid.Shared.Services.Loggers;
|
||||||
|
@using FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
||||||
|
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
|
||||||
|
@inject FruitBankSignalRClient FruitBankSignalRClient
|
||||||
|
|
||||||
|
<GridStockQuantityHistoryDto @ref="Grid" ContextIds="ContextIds" IsMasterGrid="IsMasterGrid" DataSource="StockQuantityHistoryDtos" AutoSaveLayoutName="GridStockQuantityHistoryDto"
|
||||||
|
SignalRClient="FruitBankSignalRClient" Logger="_logger"
|
||||||
|
CssClass="@GridCss" ValidationEnabled="false">
|
||||||
|
<Columns>
|
||||||
|
<DxGridDataColumn FieldName="Id" Width="125" SortIndex="0" SortOrder="GridColumnSortOrder.Descending" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="ProductId" Width="125" ReadOnly="true" Visible="false" />
|
||||||
|
<DxGridDataColumn FieldName="QuantityAdjustment" Width="135" Caption="Adj. Quantity" ReadOnly="true" />
|
||||||
|
<DxGridDataColumn FieldName="StockQuantity" Width="135" ReadOnly="true" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="StockQuantityHistoryId" Width="135" Caption="SqhId" ReadOnly="true" Visible="false" />
|
||||||
|
<DxGridDataColumn FieldName="NetWeightAdjustment" Width="135" Caption="Adj. NetWeight(kg)" ReadOnly="true" />
|
||||||
|
<DxGridDataColumn FieldName="NetWeight" Width="135" Caption="Net Weight(kg)" ReadOnly="true" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="Message" ReadOnly="true" />
|
||||||
|
<DxGridDataColumn FieldName="IsInconsistent" Width="105" Caption="Inconsistent" ReadOnly="true" />
|
||||||
|
<DxGridDataColumn FieldName="CombinationId" Width="125" ReadOnly="true" Visible="false" />
|
||||||
|
<DxGridDataColumn FieldName="WarehouseId" Width="125" ReadOnly="true" Visible="false" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="CreatedOnUtc" Width="150" Caption="Created" ReadOnly="true" DisplayFormat="g" />
|
||||||
|
</Columns>
|
||||||
|
<ToolbarTemplate>
|
||||||
|
@if (IsMasterGrid)
|
||||||
|
{
|
||||||
|
<FruitBankToolbarTemplate Grid="Grid" OnReloadDataClick="() => ReloadDataFromDb(true)"/>
|
||||||
|
}
|
||||||
|
</ToolbarTemplate>
|
||||||
|
@* <GroupSummary>
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredQuantity"
|
||||||
|
FooterColumnName="Quantity" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredGrossWeight"
|
||||||
|
FooterColumnName="GrossWeight" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredNetWeight"
|
||||||
|
FooterColumnName="NetWeight" />
|
||||||
|
</GroupSummary> *@
|
||||||
|
</GridStockQuantityHistoryDto>
|
||||||
|
|
||||||
|
@code {
|
||||||
|
[Inject] public required DatabaseClient Database { get; set; }
|
||||||
|
|
||||||
|
[Parameter] public object[]? ContextIds { get; set; }
|
||||||
|
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
||||||
|
|
||||||
|
[Parameter] public IEnumerable<ProductDto>? ProductDtos { get; set; }
|
||||||
|
[Parameter] public List<StockQuantityHistoryDto>? StockQuantityHistoryDtos { get; set; }
|
||||||
|
|
||||||
|
string GridCss => !IsMasterGrid ? "hide-toolbar" : string.Empty;
|
||||||
|
|
||||||
|
const string ExportFileName = "ExportResult";
|
||||||
|
|
||||||
|
public GridStockQuantityHistoryDto Grid { get; set; }
|
||||||
|
private LoggerClient<GridStockQuantityHistoryDtoTemplate> _logger;
|
||||||
|
|
||||||
|
protected override async Task OnInitializedAsync()
|
||||||
|
{
|
||||||
|
_logger = new LoggerClient<GridStockQuantityHistoryDtoTemplate>(LogWriters.ToArray());
|
||||||
|
|
||||||
|
await ReloadDataFromDb(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task ReloadDataFromDb(bool forceReload = false)
|
||||||
|
{
|
||||||
|
if (!IsMasterGrid) return;
|
||||||
|
|
||||||
|
using (await ObjectLock.GetSemaphore<ProductDto>().UseWaitAsync())
|
||||||
|
{
|
||||||
|
if (ProductDtos == null || !ProductDtos.Any() || forceReload) ProductDtos = await Database.ProductDtoTable.LoadDataAsync(!forceReload);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Grid == null || !forceReload) return;
|
||||||
|
|
||||||
|
using (await ObjectLock.GetSemaphore<StockQuantityHistoryDto>().UseWaitAsync())
|
||||||
|
if (forceReload) await Grid.ReloadDataSourceAsync();
|
||||||
|
|
||||||
|
if (forceReload)
|
||||||
|
Grid.Reload();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -7,9 +7,9 @@ using Microsoft.AspNetCore.Components;
|
||||||
|
|
||||||
namespace FruitBankHybrid.Shared.Components.Grids.ShippingItems;
|
namespace FruitBankHybrid.Shared.Components.Grids.ShippingItems;
|
||||||
|
|
||||||
public class GridShippingItemBase : FruitBankListGridBase<ShippingItem>, IGrid
|
public class GridShippingItem : FruitBankListGridBase<ShippingItem>, IGrid
|
||||||
{
|
{
|
||||||
public GridShippingItemBase() : base()
|
public GridShippingItem () : base()
|
||||||
{
|
{
|
||||||
GetAllMessageTag = SignalRTags.GetShippingItems;
|
GetAllMessageTag = SignalRTags.GetShippingItems;
|
||||||
AddMessageTag = SignalRTags.AddShippingItem;
|
AddMessageTag = SignalRTags.AddShippingItem;
|
||||||
|
|
|
||||||
|
|
@ -38,10 +38,23 @@
|
||||||
aria-label="Search" />
|
aria-label="Search" />
|
||||||
</Template>
|
</Template>
|
||||||
</DxToolbarItem>*@
|
</DxToolbarItem>*@
|
||||||
|
|
||||||
|
@* @if (DxToolbarItems != null)
|
||||||
|
{
|
||||||
|
foreach (var toolBarItem in DxToolbarItems)
|
||||||
|
{
|
||||||
|
@toolBarItem
|
||||||
|
}
|
||||||
|
//@DxToolbarItem
|
||||||
|
} *@
|
||||||
|
|
||||||
|
@ToolbarItemsExtended
|
||||||
|
|
||||||
</ToolbarBase>
|
</ToolbarBase>
|
||||||
|
|
||||||
@code {
|
@code {
|
||||||
[Parameter] public IGrid Grid{ get; set; }
|
[Parameter] public IGrid Grid { get; set; }
|
||||||
|
[Parameter] public RenderFragment? ToolbarItemsExtended { get; set; }
|
||||||
[Parameter] public EventCallback<ToolbarItemClickEventArgs> OnReloadDataClick { get; set; }
|
[Parameter] public EventCallback<ToolbarItemClickEventArgs> OnReloadDataClick { get; set; }
|
||||||
|
|
||||||
public ToolbarBase Toolbar { get; set; }
|
public ToolbarBase Toolbar { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -127,7 +127,7 @@
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
string? orderNote;
|
string? orderNote;
|
||||||
if (!(orderNote = SelectedOrder?.OrderNotes.FirstOrDefault()?.Note).IsNullOrWhiteSpace())
|
if (!(orderNote = SelectedOrder?.OrderNotes.LastOrDefault(x=>x.Note.StartsWith('*'))?.Note).IsNullOrWhiteSpace())
|
||||||
{
|
{
|
||||||
<div class="container-fluid p-0" style="margin-top: 20px">
|
<div class="container-fluid p-0" style="margin-top: 20px">
|
||||||
<b> Megjegyzés: </b><span>@(orderNote) </span>
|
<b> Megjegyzés: </b><span>@(orderNote) </span>
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
using System.Collections.ObjectModel;
|
using AyCode.Core.Extensions;
|
||||||
using AyCode.Core.Extensions;
|
|
||||||
using AyCode.Core.Helpers;
|
using AyCode.Core.Helpers;
|
||||||
using AyCode.Core.Loggers;
|
using AyCode.Core.Loggers;
|
||||||
using AyCode.Services.Server.SignalRs;
|
using AyCode.Services.Server.SignalRs;
|
||||||
using AyCode.Services.SignalRs;
|
using AyCode.Services.SignalRs;
|
||||||
|
using DevExpress.Utils.About;
|
||||||
using FruitBank.Common;
|
using FruitBank.Common;
|
||||||
using FruitBank.Common.Dtos;
|
using FruitBank.Common.Dtos;
|
||||||
using FruitBank.Common.Entities;
|
using FruitBank.Common.Entities;
|
||||||
|
|
@ -16,6 +16,7 @@ using Mango.Nop.Core.Dtos;
|
||||||
using Mango.Nop.Core.Models;
|
using Mango.Nop.Core.Models;
|
||||||
using MessagePack.Resolvers;
|
using MessagePack.Resolvers;
|
||||||
using Nop.Core.Domain.Customers;
|
using Nop.Core.Domain.Customers;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
using System.ServiceModel.Channels;
|
using System.ServiceModel.Channels;
|
||||||
|
|
||||||
namespace FruitBankHybrid.Shared.Services.SignalRs
|
namespace FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
@ -221,6 +222,12 @@ namespace FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
||||||
public Task<List<OrderItemPallet>?> GetAllOrderItemPalletByProductId(int productId)
|
public Task<List<OrderItemPallet>?> GetAllOrderItemPalletByProductId(int productId)
|
||||||
=> GetAllAsync<List<OrderItemPallet>>(SignalRTags.GetAllOrderItemPalletByProductId, [productId]);
|
=> GetAllAsync<List<OrderItemPallet>>(SignalRTags.GetAllOrderItemPalletByProductId, [productId]);
|
||||||
|
|
||||||
|
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtos()
|
||||||
|
=> GetAllAsync<List<StockQuantityHistoryDto>>(SignalRTags.GetStockQuantityHistoryDtos);
|
||||||
|
|
||||||
|
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtosByProductId(int productId)
|
||||||
|
=> GetAllAsync<List<StockQuantityHistoryDto>>(SignalRTags.GetStockQuantityHistoryDtosByProductId, [productId]);
|
||||||
#endregion Orders
|
#endregion Orders
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AyCode.Blazor.Models.Server
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AyCode.Maui.Core", "..\..\..\Aycode\Source\AyCode.Blazor\AyCode.Maui.Core\AyCode.Maui.Core.csproj", "{F7C67754-A59C-C355-2A10-C614F0585627}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AyCode.Maui.Core", "..\..\..\Aycode\Source\AyCode.Blazor\AyCode.Maui.Core\AyCode.Maui.Core.csproj", "{F7C67754-A59C-C355-2A10-C614F0585627}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8EC462FD-D22E-90A8-E5CE-7E832BA40C5D}"
|
||||||
|
ProjectSection(SolutionItems) = preProject
|
||||||
|
SqlSchemaCompare_Dev_to_Prod.scmp = SqlSchemaCompare_Dev_to_Prod.scmp
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,12 @@
|
||||||
<Version>10</Version>
|
<Version>10</Version>
|
||||||
<SourceModelProvider>
|
<SourceModelProvider>
|
||||||
<ConnectionBasedModelProvider>
|
<ConnectionBasedModelProvider>
|
||||||
<ConnectionString>Data Source=195.26.231.218;Initial Catalog=FruitBank_DEV;Integrated Security=False;Persist Security Info=False;User ID=sa;Pooling=False;Trust Server Certificate=True</ConnectionString>
|
<ConnectionString>Data Source=195.26.231.218;Initial Catalog=FruitBank_DEV;Integrated Security=False;Persist Security Info=False;User ID=sa;Password=v6f_?xNfg9N1;Trust Server Certificate=True</ConnectionString>
|
||||||
</ConnectionBasedModelProvider>
|
</ConnectionBasedModelProvider>
|
||||||
</SourceModelProvider>
|
</SourceModelProvider>
|
||||||
<TargetModelProvider>
|
<TargetModelProvider>
|
||||||
<ConnectionBasedModelProvider>
|
<ConnectionBasedModelProvider>
|
||||||
<ConnectionString>Data Source=195.26.231.218;Initial Catalog=FruitBank_PROD;Integrated Security=False;Persist Security Info=False;User ID=sa;Pooling=False;Trust Server Certificate=True</ConnectionString>
|
<ConnectionString>Data Source=195.26.231.218;Initial Catalog=FruitBank_PROD;Integrated Security=False;Persist Security Info=False;User ID=sa;Password=v6f_?xNfg9N1;Trust Server Certificate=True</ConnectionString>
|
||||||
</ConnectionBasedModelProvider>
|
</ConnectionBasedModelProvider>
|
||||||
</TargetModelProvider>
|
</TargetModelProvider>
|
||||||
<SchemaCompareSettingsService>
|
<SchemaCompareSettingsService>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue