using Autofac.Features.Metadata;
|
using MailKit.Search;
|
using Microsoft.IdentityModel.Tokens;
|
using Rhea.Common;
|
using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Globalization;
|
using System.Linq;
|
using System.Text;
|
using System.Text.RegularExpressions;
|
using static Tiger.Business.WMS.Barcode;
|
|
namespace Tiger.Business.WMS
|
{
|
/// <summary>
|
/// 条码分析基类
|
/// </summary>
|
public class YadaBarcode : BarcodeAnalysis
|
{
|
/// <summary>
|
/// 条码分析
|
/// </summary>
|
/// <param name="metaSn"></param>
|
public override Result<Barcode> Analyse(Barcode barcode)
|
{
|
var result = new Result<Barcode>(Result.Flags.Failed);
|
Barcode = barcode;
|
|
if (!string.IsNullOrEmpty(Barcode.MetaSn))
|
{
|
string[] parts = (Barcode.MetaSn ?? "").Split(new string[] { "/" }, StringSplitOptions.RemoveEmptyEntries);
|
//ASN单
|
if (parts.Length == 5 && (Barcode.MetaSn.StartsWith("ASN") || Barcode.MetaSn.StartsWith("YDASN")))
|
{
|
Barcode.OrderNo = parts[0];
|
Barcode.OrderLine = parts[1];
|
Barcode.ItemCode = parts[2];
|
Barcode.LotNo = parts[3];
|
Barcode.SerialNoStr = parts[4];
|
Barcode.Type = Types.MiniPackage;
|
Barcode.ItemType = ItemTypes.RawMaterial;
|
//查询条码主档,补充其他资料
|
|
result.Flag = Result.Flags.Success;
|
}
|
}
|
|
result.Data = Barcode;
|
return result;
|
}
|
|
}//endClass
|
}
|