示例#1
0
        public PrintOrderInfo GetPrintOrderSend(Guid Id)
        {
            var data = new PrintOrderInfo();

            data.Title      = "发货单";
            data.SPrintDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm");

            var bll   = new OrderSend();
            var oInfo = bll.GetModel(Id);

            data.OrderCode         = oInfo.OrderCode;
            data.PurchaseOrderCode = "";
            data.SupplierName      = "";
            data.SPlanArrivalTime  = "";
            data.SPlanArrivalTime  = "";

            Task[] tasks = new Task[2];
            tasks[0] = Task.Factory.StartNew(() =>
            {
                var bh = new BarcodeHelper();
                data.BarcodeImageUri = bh.CreateBarcode(data.OrderCode);
            });
            tasks[1] = Task.Factory.StartNew(() =>
            {
                var ospBll   = new OrderSendProduct();
                var sqlWhere = "and osp.OrderId = @OrderId ";
                var parm     = new SqlParameter("@OrderId", oInfo.Id);
                var pList    = ospBll.GetListByJoin(sqlWhere, parm);

                if (pList != null && pList.Count > 0)
                {
                    var cargoList = new List <PrintOrderCargoInfo>();
                    foreach (var item in pList)
                    {
                        cargoList.Add(new PrintOrderCargoInfo("", item.ProductCode, item.ProductName, item.CustomerCode, item.CustomerName, "", "", "", 0, item.Qty, ""));
                    }
                    data.CargoList = cargoList;
                    //data.CargoList = JsonConvert.SerializeObject(cargoList);
                }
            });

            Task.WaitAll(tasks);

            return(data);
        }
示例#2
0
        public PrintOrderInfo GetPrintOrderReceipt(Guid Id)
        {
            var data = new PrintOrderInfo();

            data.Title      = "收货单";
            data.SPrintDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm");

            var bll   = new OrderReceipt();
            var oInfo = bll.GetModel(Id);

            data.OrderCode         = oInfo.OrderCode;
            data.PurchaseOrderCode = "";
            data.SupplierName      = "";
            data.SPlanArrivalTime  = "";
            data.SPlanArrivalTime  = "";

            var t1 = Task.Factory.StartNew(() =>
            {
                BarcodeHelper bh     = new BarcodeHelper();
                data.BarcodeImageUri = bh.CreateBarcode(data.OrderCode);
            });

            var orpBll   = new OrderReceiptProduct();
            var sqlWhere = "and orp.OrderId = @OrderId ";
            var parm     = new SqlParameter("@OrderId", oInfo.Id);
            var pList    = orpBll.GetListByJoin(sqlWhere, parm);

            if (pList != null && pList.Count > 0)
            {
                var cargoList = new List <PrintOrderCargoInfo>();
                foreach (var item in pList)
                {
                    cargoList.Add(new PrintOrderCargoInfo("", item.ProductCode, item.ProductName, "", "", item.PackageCode, item.PackageName, item.Unit, item.ExpectedQty, item.ReceiptQty, ""));
                }
                data.CargoList = cargoList;
                //data.CargoList = JsonConvert.SerializeObject(cargoList);
            }

            t1.Wait();

            return(data);
        }
示例#3
0
        private void CreateHtml(string key, Guid Id)
        {
            var            sbCargoListHtml = new StringBuilder();
            var            po     = new PrintOrder();
            PrintOrderInfo poInfo = null;
            var            index  = 0;

            switch (key)
            {
            case "PreOrderReceipt":
                poInfo = po.GetPrintPreOrderReceipt(Id);
                sbCargoListHtml.Append("<tr><th>序号</th><th>货品</th><th>货品名称</th><th>包装</th><th>单位</th><th>预期量</th></tr>");
                if (poInfo.CargoList != null && poInfo.CargoList.Count > 0)
                {
                    foreach (var item in poInfo.CargoList)
                    {
                        index++;
                        sbCargoListHtml.Append(@"<tr><td>" + index + "</td><td>" + item.ProductCode + "</td><td>" + item.ProductName + "</td><td>" + item.PackageCode + "</td><td>" + item.UnitName + "</td><td>" + item.Qty + "</td></tr>");
                    }
                }
                break;

            case "OrderReceipt":
                poInfo = po.GetPrintOrderReceipt(Id);
                sbCargoListHtml.Append("<tr><th>序号</th><th>货品</th><th>货品名称</th><th>包装</th><th>单位</th><th>已收货量</th></tr>");
                if (poInfo.CargoList != null && poInfo.CargoList.Count > 0)
                {
                    foreach (var item in poInfo.CargoList)
                    {
                        index++;
                        sbCargoListHtml.Append(@"<tr><td>" + index + "</td><td>" + item.ProductCode + "</td><td>" + item.ProductName + "</td><td>" + item.PackageCode + "</td><td>" + item.UnitName + "</td><td>" + item.Qty + "</td></tr>");
                    }
                }
                break;

            case "shelve":
                poInfo = po.GetPrintShelfMission(Id);
                sbCargoListHtml.Append("<tr><th>序号</th><th>货品</th><th>货品名称</th><th>收货单号</th><th>待上架量</th><th>已上架量</th></tr>");
                if (poInfo.CargoList != null && poInfo.CargoList.Count > 0)
                {
                    foreach (var item in poInfo.CargoList)
                    {
                        index++;
                        sbCargoListHtml.Append(@"<tr><td>" + index + "</td><td>" + item.ProductCode + "</td><td>" + item.ProductName + "</td><td>" + item.OrderCode + "</td><td>" + item.StayQty + "</td><td>" + item.Qty + "</td></tr>");
                    }
                }
                break;

            case "OrderSend":
                poInfo = po.GetPrintOrderSend(Id);
                sbCargoListHtml.Append("<tr><th>序号</th><th>货品</th><th>货品名称</th><th>客户代码</th><th>客户名称</th><th>数量</th></tr>");
                if (poInfo.CargoList != null && poInfo.CargoList.Count > 0)
                {
                    foreach (var item in poInfo.CargoList)
                    {
                        index++;
                        sbCargoListHtml.Append(@"<tr><td>" + index + "</td><td>" + item.ProductCode + "</td><td>" + item.ProductName + "</td><td>" + item.CustomerCode + "</td><td>" + item.CustomerName + "</td><td>" + item.Qty + "</td></tr>");
                    }
                }
                break;

            case "OrderPick":
                poInfo = po.GetPrintOrderPick(Id);
                sbCargoListHtml.Append("<tr><th>序号</th><th>货品</th><th>货品名称</th><th>客户代码</th><th>客户名称</th><th>待拣量</th><th>已拣量</th></tr>");
                if (poInfo.CargoList != null && poInfo.CargoList.Count > 0)
                {
                    foreach (var item in poInfo.CargoList)
                    {
                        index++;
                        sbCargoListHtml.Append(@"<tr><td>" + index + "</td><td>" + item.ProductCode + "</td><td>" + item.ProductName + "</td><td>" + item.CustomerCode + "</td><td>" + item.CustomerName + "</td><td>" + item.StayQty + "</td><td>" + item.Qty + "</td></tr>");
                    }
                }
                break;

            default:
                break;
            }
            imgBarcode.Src                = poInfo.BarcodeImageUri;
            lbTitle.InnerText             = poInfo.Title;
            lbPrintDate.InnerText         = poInfo.SPrintDate;
            lbPurchaseOrderCode.InnerText = poInfo.PurchaseOrderCode;
            lbSupplierName.InnerText      = poInfo.SupplierName;
            lbPlanArrivalTime.InnerText   = poInfo.SPlanArrivalTime;
            lbActualArrivalTime.InnerText = poInfo.SActualArrivalTime;

            ltrCargoList.Text = string.Format(@"<table id=""dgCargo"" class=""dgPrint"">{0}</table>", sbCargoListHtml.ToString());
        }