tbf/SharedDatabase/Entities/Record.cs

47 lines
2.2 KiB
C#
Raw Normal View History

using System;
using System.Collections.Generic;
namespace SharedDatabase.Entities
{
public class Record
{
public virtual int Id { get; protected set; }
public virtual string Name { get; set; } /// Part name (e.g. SAP number)
public virtual string Code { get; set; } /// Serial number or batch number
public virtual int Result { get; set; } /// Operation result: 0=OK, otherwise a non-zero error code
public virtual string Note { get; set; } /// Arbitrary additional information (e.g. Oracle settings)
public virtual StepRecord StepRecord { get; set; } /// Step record with timestamp/workstep/workplace/user info, many-to-one relationship
public virtual ReferenceRecord ReferenceRecord { get; set; } /// Reference record with info identifying the product, many-to-one relationship
protected Record() { }
/// <summary>
/// Constructor used when a part barcode is scanned
/// </summary>
/// <param name="name">Part name (SAP nr.)</param>
/// <param name="code">Scanned barcode: S/N or a batch nr.</param>
/// <param name="result">0=OK, otherwise a non-zero error code</param>
/// <param name="stepRecord">Step record</param>
/// <param name="referenceRecord">Reference record</param>
/// <param name="note">true = record with workstep info, false = record with part info</param>
public Record(ReferenceRecord referenceRecord, StepRecord stepRecord, string name, string code, int result = 0, string note = null)
{
ReferenceRecord = referenceRecord;
StepRecord = stepRecord;
Name = name;
Code = code;
Result = Result;
Note = note;
}
public override string ToString()
{
return string.Format("name={0} code={1} rslt={2} note={3}",
Name != null ? Name : "<none>",
Code != null ? Code : "<none>",
Result,
Note != null ? Note : "<none>");
}
}
}