public QrBuilder Add(QrIdentifier identifier, string data) { if (string.IsNullOrWhiteSpace(data)) { throw new ArgumentException("Invalid data"); } var id = identifier.GetCode(); var digits = (data ?? string.Empty).GetLength(); removeOldRecordIfExists(id); qrDataObjects.Add(new QrDataObject($"{id}{digits}{data}")); return(this); }
public void SimpleGeneration(QrIdentifier id, string value, string expected) => sut.Add(id, value).ToString().Should().BeEquivalentTo(expected);
private string getSegment(QrIdentifier identifier) => Segments?.LastOrDefault(it => it.Identifier == identifier)?.Value ?? "undefine";
private string getSegment(QrIdentifier identifier) => Segments?.LastOrDefault(it => it.IdByConvention == identifier)?.Value ?? null;
public static string GetCode(this QrIdentifier identifier, string format = "00") => ((int)identifier).ToString(format);
private string getIdCode(QrIdentifier identifier) => ((int)identifier).ToString("00");
/// <summary> /// ดึงข้อมูลจากส่วนประกอบ โดยการระบุประเภทข้อมูลที่ต้องการ /// </summary> /// <param name="identifier">ประเภทข้อมูลที่ต้องการอ่าน</param> protected string GetSegmentValue(QrIdentifier identifier) => Segments?.LastOrDefault(it => it.IdByConvention == identifier)?.Value ?? null;
public IPromptPayBuilder Add(QrIdentifier identifier, string data) { qrBuilder.Add(identifier, data); return(this); }