MemoryStreamos a fotó ...
This commit is contained in:
@@ -0,0 +1,66 @@
|
|||||||
|
using System.ComponentModel;
|
||||||
|
using WorkFlowCheck.Common.DTO;
|
||||||
|
|
||||||
|
namespace WorkFlowCheck.MAUI.Pages.CheckList
|
||||||
|
{
|
||||||
|
public class CheckListRowCS : INotifyPropertyChanged
|
||||||
|
{
|
||||||
|
private byte[] _photoBytes;
|
||||||
|
private ImageSource? _photo;
|
||||||
|
|
||||||
|
public event PropertyChangedEventHandler PropertyChanged;
|
||||||
|
|
||||||
|
public int Id { get; set; }
|
||||||
|
public string AnswerType { get; set; } = null!;
|
||||||
|
public int RowIndex { get; set; }
|
||||||
|
public string OperationDescription { get; set; } = null!;
|
||||||
|
public string GroupName { get; set; } = null!;
|
||||||
|
public string Answer { get; set; } = null!;
|
||||||
|
public bool? AnswerYes { get; set; } = null!;
|
||||||
|
public bool? AnswerNo { get; set; } = null!;
|
||||||
|
public byte[] PhotoBytes
|
||||||
|
{
|
||||||
|
get => _photoBytes;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_photoBytes != value)
|
||||||
|
{
|
||||||
|
_photoBytes = value;
|
||||||
|
_photo = null;
|
||||||
|
OnPropertyChanged(nameof(PhotoBytes));
|
||||||
|
OnPropertyChanged(nameof(Photo));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public ImageSource Photo
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (_photo == null)
|
||||||
|
{
|
||||||
|
if (PhotoBytes != null && PhotoBytes.Length > 0)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var bytesCopy = PhotoBytes.ToArray();
|
||||||
|
_photo = ImageSource.FromStream(() => new MemoryStream(bytesCopy));
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
_photo = ImageSource.FromFile("noimage.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_photo = ImageSource.FromFile("noimage.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return _photo;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void OnPropertyChanged(string name) =>
|
||||||
|
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||||
<CollectionView x:Name="CheckPointCheckListRows"
|
<CollectionView x:Name="CheckPointCheckListRows"
|
||||||
HeightRequest="555"
|
HeightRequest="555"
|
||||||
ItemsSource="{Binding CheckListRows}"
|
ItemsSource="{Binding CheckListRowCSs}"
|
||||||
ItemTemplate="{StaticResource AnswerTemplateSelector}">
|
ItemTemplate="{StaticResource AnswerTemplateSelector}">
|
||||||
<CollectionView.EmptyView>
|
<CollectionView.EmptyView>
|
||||||
<Label Text="Nincsenek feladatok." HorizontalOptions="Center" VerticalOptions="Center"/>
|
<Label Text="Nincsenek feladatok." HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||||
@@ -93,8 +93,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" />
|
<Label Text="{Binding RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" />
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
||||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center"/>
|
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center"/>
|
||||||
@@ -126,8 +126,8 @@
|
|||||||
<ColumnDefinition Width="3*" />
|
<ColumnDefinition Width="3*" />
|
||||||
<ColumnDefinition Width="2*" />
|
<ColumnDefinition Width="2*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
<Label Text="{Binding RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="Auto,Auto" VerticalOptions="Center">
|
<Grid Grid.Column="2" ColumnDefinitions="Auto,Auto" VerticalOptions="Center">
|
||||||
<Image Grid.Column="0"
|
<Image Grid.Column="0"
|
||||||
WidthRequest="95"
|
WidthRequest="95"
|
||||||
@@ -135,13 +135,7 @@
|
|||||||
Aspect="AspectFill"
|
Aspect="AspectFill"
|
||||||
Margin="0,0,10,0"
|
Margin="0,0,10,0"
|
||||||
VerticalOptions="Center"
|
VerticalOptions="Center"
|
||||||
Source="{Binding Photo, Converter={StaticResource ByteArrayToImageSourceConverter}}" >
|
Source="{Binding Photo}" >
|
||||||
<Image.Behaviors>
|
|
||||||
<toolkit:EventToCommandBehavior
|
|
||||||
EventName="BindingContextChanged"
|
|
||||||
Command="{Binding BindingContext.RefreshImageCommand, Source={x:Reference CheckPointCheckListRows}}"
|
|
||||||
CommandParameter="{Binding .}" />
|
|
||||||
</Image.Behaviors>
|
|
||||||
</Image>
|
</Image>
|
||||||
<Button Text="📷" Grid.Column="1"
|
<Button Text="📷" Grid.Column="1"
|
||||||
VerticalOptions="Center"
|
VerticalOptions="Center"
|
||||||
@@ -160,8 +154,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
<Label Text="{Binding RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*">
|
<Grid Grid.Column="2" ColumnDefinitions="*">
|
||||||
<Label Text="Érték megadása szükséges" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
<Label Text="Érték megadása szükséges" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
@@ -181,8 +175,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="{Binding RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||||
<Label Text="I" Grid.Column="0" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="I" Grid.Column="0" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
@@ -215,8 +209,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="{Binding RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="N" Grid.Column="1" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="N" Grid.Column="1" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
@@ -249,8 +243,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="{Binding RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||||
<Label Text="I" Grid.Column="0" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="I" Grid.Column="0" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
@@ -283,8 +277,8 @@
|
|||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="{Binding RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
<Label Text="{Binding OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
<Label Text="N" Grid.Column="1" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
<Label Text="N" Grid.Column="1" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||||
@@ -316,6 +310,5 @@
|
|||||||
PI_N_Template="{StaticResource PI_N_Template}"
|
PI_N_Template="{StaticResource PI_N_Template}"
|
||||||
I_PN_Template="{StaticResource I_PN_Template}"
|
I_PN_Template="{StaticResource I_PN_Template}"
|
||||||
V_Template="{StaticResource V_Template}"/>
|
V_Template="{StaticResource V_Template}"/>
|
||||||
<local:ByteArrayToImageSourceConverter x:Key="ByteArrayToImageSourceConverter"/>
|
|
||||||
</ContentPage.Resources>
|
</ContentPage.Resources>
|
||||||
</ContentPage>
|
</ContentPage>
|
||||||
@@ -29,17 +29,13 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
OnPropertyChanged(nameof(IsLoading));
|
OnPropertyChanged(nameof(IsLoading));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public ObservableCollection<CheckListRowDTO> CheckListRows { get; set; } = new ObservableCollection<CheckListRowDTO>();
|
public ObservableCollection<CheckListRowCS> CheckListRowCSs { get; set; } = new ObservableCollection<CheckListRowCS>();
|
||||||
public ICommand RefreshImageCommand => new Command<CheckListRowDTO>(item =>
|
public List<CheckListRowDTO> CheckListRowDTOs { get; set; }
|
||||||
{
|
|
||||||
int i = 0;
|
|
||||||
// Ha kell, itt újra lehet állítani valamit vagy logolni
|
|
||||||
//Debug.WriteLine($"Kép frissítés: {item.Id}");
|
|
||||||
});
|
|
||||||
public ICommand TakePhoto { get; set; }
|
public ICommand TakePhoto { get; set; }
|
||||||
public ICommand SendCommand { get; set; }
|
public ICommand SendCommand { get; set; }
|
||||||
public ICommand SaveCommand { get; set; }
|
public ICommand SaveCommand { get; set; }
|
||||||
|
|
||||||
public CheckListWorkPage(int checkListHeaderId, string checkPointCode)
|
public CheckListWorkPage(int checkListHeaderId, string checkPointCode)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
@@ -122,17 +118,22 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
{
|
{
|
||||||
await Task.Run(async () =>
|
await Task.Run(async () =>
|
||||||
{
|
{
|
||||||
foreach (var checkListRow in CheckListRows)
|
foreach (var checkListRowCS in CheckListRowCSs)
|
||||||
{
|
{
|
||||||
if (checkListRow.AnswerYes == true)
|
var checkListRowDTO = CheckListRowDTOs.Where(w => w.Id == checkListRowCS.Id).FirstOrDefault();
|
||||||
|
|
||||||
|
if (checkListRowDTO != null)
|
||||||
{
|
{
|
||||||
checkListRow.Answer = "Igen";
|
if (checkListRowDTO.AnswerYes == true)
|
||||||
|
{
|
||||||
|
checkListRowDTO.Answer = "Igen";
|
||||||
|
}
|
||||||
|
if (checkListRowDTO.AnswerNo == true)
|
||||||
|
{
|
||||||
|
checkListRowDTO.Answer = "Nem";
|
||||||
|
}
|
||||||
|
await _checkListService.UpdateCheckListRow(checkListRowDTO, withReload);
|
||||||
}
|
}
|
||||||
if (checkListRow.AnswerNo == true)
|
|
||||||
{
|
|
||||||
checkListRow.Answer = "Nem";
|
|
||||||
}
|
|
||||||
await _checkListService.UpdateCheckListRow(checkListRow, withReload);
|
|
||||||
}
|
}
|
||||||
if (withReload) await LoadCheckPointCheckListRows();
|
if (withReload) await LoadCheckPointCheckListRows();
|
||||||
});
|
});
|
||||||
@@ -152,7 +153,7 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
base.OnAppearing();
|
base.OnAppearing();
|
||||||
BindingContext = this;
|
BindingContext = this;
|
||||||
await SetInfo();
|
await SetInfo();
|
||||||
TakePhoto = new Command<CheckListRowDTO>(OnTakePhoto);
|
TakePhoto = new Command<CheckListRowCS>(OnTakePhoto);
|
||||||
await LoadCheckPointCheckListRows();
|
await LoadCheckPointCheckListRows();
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -175,7 +176,7 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
|
|
||||||
return data.ToArray();
|
return data.ToArray();
|
||||||
}
|
}
|
||||||
private async void OnTakePhoto(CheckListRowDTO checkListRowDTO)
|
private async void OnTakePhoto(CheckListRowCS checkListRowCS)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -185,11 +186,18 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
var photo = await MediaPicker.CapturePhotoAsync();
|
var photo = await MediaPicker.CapturePhotoAsync();
|
||||||
if (photo != null)
|
if (photo != null)
|
||||||
{
|
{
|
||||||
checkListRowDTO.Photo = await ResizePicture(photo, 500);
|
checkListRowCS.PhotoBytes = await ResizePicture(photo, 500);
|
||||||
checkListRowDTO.Answer = "Igen";
|
checkListRowCS.Answer = "Igen";
|
||||||
|
|
||||||
await _checkListService.UpdateCheckListRow(checkListRowDTO, true);
|
var checkListRowDTO = CheckListRowDTOs.FirstOrDefault(w => w.Id == checkListRowCS.Id);
|
||||||
await LoadCheckPointCheckListRows();
|
if (checkListRowDTO != null)
|
||||||
|
{
|
||||||
|
checkListRowDTO.Photo = checkListRowCS.PhotoBytes;
|
||||||
|
checkListRowDTO.Answer = "Igen";
|
||||||
|
|
||||||
|
await _checkListService.UpdateCheckListRow(checkListRowDTO, true);
|
||||||
|
await LoadCheckPointCheckListRows();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -206,9 +214,11 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
{
|
{
|
||||||
IsLoading = true;
|
IsLoading = true;
|
||||||
|
|
||||||
CheckListRows.Clear();
|
CheckListRowCSs.Clear();
|
||||||
var checkListRowDTOs = await _checkListService.GetCheckListRowsByCheckPointCode(_currentUser.Id, _checkListHeaderId, _checkPointCode);
|
|
||||||
foreach (var item in checkListRowDTOs)
|
CheckListRowDTOs = await _checkListService.GetCheckListRowsByCheckPointCode(_currentUser.Id, _checkListHeaderId, _checkPointCode);
|
||||||
|
|
||||||
|
foreach (var item in CheckListRowDTOs)
|
||||||
{
|
{
|
||||||
if (item.Answer == "Igen")
|
if (item.Answer == "Igen")
|
||||||
{
|
{
|
||||||
@@ -220,7 +230,20 @@ public partial class CheckListWorkPage : ContentPage
|
|||||||
item.AnswerYes = false;
|
item.AnswerYes = false;
|
||||||
item.AnswerNo = true;
|
item.AnswerNo = true;
|
||||||
}
|
}
|
||||||
CheckListRows.Add(item);
|
var checkListRowCS = new CheckListRowCS()
|
||||||
|
{
|
||||||
|
Answer = item.Answer,
|
||||||
|
AnswerNo = item.AnswerNo,
|
||||||
|
AnswerYes = item.AnswerYes,
|
||||||
|
GroupName = $"AnswerGroup_{item.CheckListTemplateRowDTO?.Id ?? 0}",
|
||||||
|
Id = item.Id,
|
||||||
|
RowIndex = item.CheckListTemplateRowDTO?.RowIndex ?? 0,
|
||||||
|
OperationDescription = item.CheckListTemplateRowDTO?.OperationDescription ?? "N/A",
|
||||||
|
AnswerType = item.CheckListTemplateRowDTO?.AnswerType ?? "I-N",
|
||||||
|
PhotoBytes = item.Photo ?? Array.Empty<byte>(),
|
||||||
|
};
|
||||||
|
|
||||||
|
CheckListRowCSs.Add(checkListRowCS);
|
||||||
}
|
}
|
||||||
|
|
||||||
IsLoading = false;
|
IsLoading = false;
|
||||||
@@ -273,19 +296,4 @@ public class BindableRadioButton : RadioButton
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public class ByteArrayToImageSourceConverter : IValueConverter
|
|
||||||
{
|
|
||||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
||||||
{
|
|
||||||
if (value is byte[] bytes && bytes.Length > 0)
|
|
||||||
{
|
|
||||||
return ImageSource.FromStream(() => new MemoryStream(bytes));
|
|
||||||
}
|
|
||||||
return ImageSource.FromFile("noimage.png"); ;
|
|
||||||
}
|
|
||||||
|
|
||||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -218,7 +218,7 @@ namespace WorkFlowCheck.MAUI.Services
|
|||||||
{
|
{
|
||||||
if (responseList.IsSuccess)
|
if (responseList.IsSuccess)
|
||||||
{
|
{
|
||||||
var entityList = await _dbContext.Locations.ToListAsync();
|
var entityList = await _dbContext.Equipments.ToListAsync();
|
||||||
var missingItems = responseList.Data.Where(f => !entityList.Any(s => s.Id == f.Id)).ToList();
|
var missingItems = responseList.Data.Where(f => !entityList.Any(s => s.Id == f.Id)).ToList();
|
||||||
|
|
||||||
var mappedMissingItems = _mapper.Map<List<Equipment>>(missingItems);
|
var mappedMissingItems = _mapper.Map<List<Equipment>>(missingItems);
|
||||||
|
|||||||
@@ -50,6 +50,21 @@ namespace WorkFlowCheck.MAUI.TemplateSelectors
|
|||||||
_ => I_N_Template
|
_ => I_N_Template
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
if (item is CheckListRowCS model3)
|
||||||
|
{
|
||||||
|
return model3.AnswerType switch
|
||||||
|
{
|
||||||
|
"I-N" => I_N_Template,
|
||||||
|
"P" => P_Template,
|
||||||
|
"PN" => P_Template,
|
||||||
|
"V" => V_Template,
|
||||||
|
"SI-N" => SI_N_Template,
|
||||||
|
"I-SN" => I_SN_Template,
|
||||||
|
"PI-N" => PI_N_Template,
|
||||||
|
"I-PN" => I_PN_Template,
|
||||||
|
_ => I_N_Template
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user