Files
BeWoPlaner/BeWoPlanerMobil/Util/ReportUtils/ConfirmationReceiptObject.cs
2025-06-17 13:06:29 +02:00

58 lines
1.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
namespace BeWoPlanerMobil.Util.ReportUtils
{
[Serializable]
public class ConfirmationReceiptObject
{
public string Information { get; }
public List<QuittierungsbelegResult> ConfirmationReceiptResultList { get; }
public int NumberOfServiceRecords
{
get
{
var count = 0;
ConfirmationReceiptResultList.DoForEach(crr => count += crr.Items.Count);
return count;
}
}
public string SignatureCanvasInformation { get; set; }
public string TimeSpanString { get; set; }
public bool HasEmployeeSignature { get; }
public SignatureState EmployeeSignatureState { get; }
//public List<ConfirmationReceiptSignatureDC> EmployeeSignatures { get; }
public List<long> EmployeeSignatureOids { get; }
public ConfirmationReceiptObject(string information, List<QuittierungsbelegResult> confirmationReceiptResultList, string signatureCanvasInformation, string timeSpanString, bool hasEmployeeSignature, List<ConfirmationReceiptSignatureDC> employeeSignatures, SignatureState employeeSignatureState)
{
Information = information;
ConfirmationReceiptResultList = confirmationReceiptResultList;
SignatureCanvasInformation = signatureCanvasInformation;
TimeSpanString = timeSpanString;
HasEmployeeSignature = hasEmployeeSignature;
EmployeeSignatureOids = employeeSignatures.Select(s => s.ConfirmationReceiptSignatureOid.Value).ToList();
EmployeeSignatureState = employeeSignatureState;
}
}
public enum SignatureState
{
None,
Some,
All,
AllOwnServiceRecords
}
}