using Tiger.Model;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Rhea.Common;
using System.Net;
using System.Linq;
using Newtonsoft.Json;
using Tiger.IBusiness;
using Microsoft.AspNetCore.Http;
using Tiger.Model.Entitys.MES.BizMesWoBatch;
using Tiger.Model.Entitys.MES.BizMesWo;
using Tiger.Model.Entitys.MES.BizBasPkgRule;
using Tiger.Model.Entitys.MES.Position;
using Tiger.Model.Entitys.MES.U9C;
using Tiger.Model.Entitys.MES.BizPrintInstoreDoc;
namespace Tiger.Business.MES
{
public partial class BizPrintInstoreDoc : IBizPrintInstoreDoc
{
///
/// 获取变量
///
///
///
public async Task>> GetPrintProcessValue(PrintInstoreDocInput input)
{
var result = new ApiAction>();
try
{
List labels = new List();
int i = 1;
int j = 1;
foreach (var p in input.printJsons)
{
BAS_LABEL_TEMP label = await Biz.Db.Queryable().Where(q => q.LABEL_CODE == input.LabelCode).FirstAsync();
foreach (var item in label.Variables.OrderBy(q => q.VAR_TYPE == BAS_LABEL_VAR.VAR_TYPEs.BarcodeGenerate.GetValue() ? 0 : 1))
{
foreach (var v in p.Items) {
if (item.VAR_NAME.StartsWith("RcvDoc"))
{
item.Value = v.ORDER_NO;
}
if (item.VAR_NAME.StartsWith("SoDoc"))
{
item.Value = v.SALES_ORDER;
}
if (item.VAR_NAME.StartsWith("MoDoc"))
{
item.Value = v.WORK_ORDER;
}
if (item.VAR_NAME.StartsWith("ItemCode"))
{
item.Value = v.ITEM_CODE;
}
if (item.VAR_NAME.StartsWith("Description"))
{
item.Value = v.ITEM_NAME;
}
if (item.VAR_NAME.StartsWith("BoxQty"))
{
item.Value = v.CartonQty.ToString();
}
if (item.VAR_NAME.StartsWith("InQty"))
{
item.Value = v.SCAN_QTY.ToString();
}
if (item.VAR_NAME.StartsWith("RcvQrCode"))
{
item.Value = v.ORDER_NO.ToString();
}
if (item.VAR_NAME.StartsWith("SapCode"))
{
item.Value = v.SapCode;
}
if (item.VAR_NAME.StartsWith("Seq"))
{
item.Value = i.ToString();
}
i++;
}
if (item.VAR_NAME == "PageNum")
{
item.Value = j.ToString();
}
if (item.VAR_NAME == "PageSize")
{
item.Value = input.printJsons.Count.ToString();
}
if (item.VAR_NAME == "BusinessDate")
{
item.Value = DateTime.Now.ToString("yyyyy.MM.dd");
}
}
labels.Add(label);
j++;
}
result.Data = labels;
}
catch (Exception ex)
{
result.CatchExceptionWithLog(ex, "获取变量异常");
}
return result;
}
}
}