服务端的TigerApi 框架,基于.NET6 2024 版本
YangYuGang
2025-03-26 ec109c23e687420254500e399f7e6842d865cdd3
Tiger.Business.WMS/ERP/U9C_WMS.cs
@@ -9,6 +9,7 @@
using Tiger.IBusiness;
using SqlSugar;
using System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder;
using Tiger.Model.Entitys.MES.U9C;
namespace Tiger.Business.WMS
{
@@ -129,9 +130,10 @@
                        ID = dtl.LineID.ToString(),
                        ITEM_CODE = dtl.ItemCode,
                        QTY_PACKING = dtl.PackQty.ToDouble(),
                        QTY = dtl.POQtyTU.ToDouble(),
                        QTY = dtl.ShipQtyTU.ToDouble(),
                        PO_QTY = dtl.POQtyTU,
                        SUPP_CODE = dtl.SupplierCode,
                        SUPP_LOTNO = dtl.SupplierLot,
                        SUPP_LOTNO = dtl.LotMater,
                        LOTNO = dtl.LotMater,
                        AUTH_ORG = orgs.FirstOrDefault(q => q.ID == dtl.Org.ToString())?.ORG_CODE,
                        CREATE_TIME = dtl.ModifiedOn,//--时间不更新
@@ -145,10 +147,12 @@
                foreach (var asn in asns)
                {
                    var snlist = db.Queryable<mes_MaterialBarCode>().Where(x => x.Segment1 == asn.ORDER_NO || x.Segment2 == asn.ORDER_NO).ToList();
                    foreach (var sn in snlist)
                    {
                        var barcode = new Barcode(sn.Code);
                        var dtl = dtls.First(q => q.LINE_NO == barcode.OrderLine);
                        var asnDtl = list.First(q => q.DocLineNo.ToString() == barcode.OrderLine);
                        BIZ_U9_ASN_SN info = new()
                        {
                            AUTH_ORG = asn.AUTH_ORG,
@@ -176,7 +180,7 @@
                                AUTH_ORG = asn.AUTH_ORG,
                                STATUS = WMS_ITEM.STATUSs.Incoming.GetValue(),
                                QTY = sn.WhQty,
                                PROD_DATE = barcode.ProdDate ?? DateTime.Now,
                                PROD_DATE = barcode.ProdDate ?? BarcodeAnalysis.GetDateTime(asnDtl.SupplierLot) ??DateTime.Now,
                                UNIT = barcode.Unit,
                                TRANS_CODE = nameof(BIZ_U9_ASN),
                                TRANS_NO = info.ORDER_NO,
@@ -223,7 +227,7 @@
                               .WhereColumns(t => new { t.ORDER_NO, t.GHOST_ROW })
                               .ToStorage();
                        y.AsInsertable.ExecuteCommand();
                        y.AsUpdateable.IgnoreColumns(x => x.ID).UpdateColumns(q => new { q.ORDER_NO, q.SUPP_CODE, q.SUPP_NAME, q.DELIVERY_DATE, q.PLANARRIVED_DATE, q.ORDER_DATE, q.CREATE_USER, q.UPDATE_TIME, q.AUTH_ORG, q.UPDATE_USER, }).ExecuteCommand();
                        y.AsUpdateable.IgnoreColumns(x => x.ID).UpdateColumns(q => new { q.ORDER_NO, q.SUPP_CODE, q.SUPP_NAME, q.DELIVERY_DATE,q.PLANARRIVED_DATE, q.ORDER_DATE, q.CREATE_USER, q.UPDATE_TIME, q.AUTH_ORG, q.UPDATE_USER, }).ExecuteCommand();
                    });
                }
                if (dtls.Any())
@@ -234,7 +238,7 @@
                               .WhereColumns(t => new { t.ORDER_NO, t.ID, t.GHOST_ROW })
                               .ToStorage();
                        y.AsInsertable.ExecuteCommand();
                        y.AsUpdateable.UpdateColumns(q => new { q.ORDER_NO, q.LINE_NO, q.SUPP_CODE, q.ID, q.ITEM_CODE, q.QTY_PACKING, q.QTY, q.SUPP_LOTNO, q.LOTNO, q.AUTH_ORG, q.CREATE_USER, q.UPDATE_TIME, q.UPDATE_USER, }).ExecuteCommand();
                        y.AsUpdateable.UpdateColumns(q => new { q.ORDER_NO, q.LINE_NO, q.SUPP_CODE, q.ID, q.ITEM_CODE, q.QTY_PACKING, q.QTY,q.PO_QTY, q.SUPP_LOTNO, q.LOTNO, q.AUTH_ORG, q.CREATE_USER, q.UPDATE_TIME, q.UPDATE_USER, }).ExecuteCommand();
                    });
                }
                if (sns.Any())
@@ -332,7 +336,7 @@
                        ORDER_NO = item.DocNo,  //单据号
                        LINE_NO = item.DocLineNo.ToString(), //单据行号
                        ITEM_CODE = item.ItemCode, //物料编码
                        QTY = item.RtnFillQtyTU.ToDouble(), // mes单据数量 --U9退补数量
                        QTY = item.EyeballingQtyTU.ToDouble(), // mes单据数量 --U9退补数量
                        AUTH_ORG = orgs.FirstOrDefault(q => q.ID == item.Org.ToString())?.ORG_CODE,  //生产单元授权标识字符
                        CREATE_TIME = item.ModifiedOn,//--时间不更新
                        CREATE_USER = UserCode,