コード例 #1
0
        public async Task <ActionResult> ParentQuery(MaterialReceiptDetailParentQueryViewModel model)
        {
            LineStoreMaterialDetail lsmd = null;
            MaterialReceiptDetail   mrd  = null;

            if (ModelState.IsValid && model.MaterialLot != null)
            {
                using (LineStoreMaterialServiceClient client = new LineStoreMaterialServiceClient())
                {
                    await Task.Run(() =>
                    {
                        PagingConfig cfg = new PagingConfig()
                        {
                            Where = string.Format("  Key.MaterialLot Like  '{0}'"
                                                  , model.MaterialLot)
                        };
                        MethodReturnResult <IList <LineStoreMaterialDetail> > result = client.GetDetail(ref cfg);

                        if (result.Code <= 0 && result.Data != null && result.Data.Count > 0)
                        {
                            lsmd = result.Data[0];
                        }
                    });
                }
                if (lsmd != null)
                {
                    using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient())
                    {
                        await Task.Run(() =>
                        {
                            PagingConfig cfg = new PagingConfig()
                            {
                                OrderBy = "CreateTime Desc,Key.ReceiptNo,Key.ItemNo",
                                Where   = string.Format("MaterialLot LIKE '{0}'"
                                                        , lsmd.Attr2)
                            };
                            MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg);

                            if (result.Code == 0 && result.Data.Count > 0 && result.Data[0] != null)
                            {
                                ViewBag.lsmd = lsmd;
                                ViewBag.mrd  = result.Data[0];
                            }
                        });
                    }
                }
            }
            if (Request.IsAjaxRequest())
            {
                return(PartialView("_ParentListPartial"));
            }
            else
            {
                return(View("ParentQueryIndex"));
            }
        }
コード例 #2
0
        public ActionResult GetMaterialLot(string materialLot, string materialCode, string orderNumber)
        {
            LineStoreMaterialDetail lineStoreMaterialDetail = new LineStoreMaterialDetail();

            if (materialLot.StartsWith("JNC") || materialLot.StartsWith("jnc"))
            {
                MaterialReceiptDetail obj = this.GetBox(materialLot);
                lineStoreMaterialDetail.Attr1        = obj.Attr1;
                lineStoreMaterialDetail.SupplierCode = "000000";
                lineStoreMaterialDetail.LoadingQty   = obj.Qty;
                lineStoreMaterialDetail.Attr2        = obj.Attr2;
            }
            else
            {
                using (LineStoreMaterialServiceClient client = new LineStoreMaterialServiceClient())
                {
                    PagingConfig cfg = new PagingConfig()
                    {
                        PageSize = 1,
                        Where    = string.Format(@"Key.MaterialCode='{0}' 
                                            AND Key.MaterialLot = '{1}'
                                            AND Key.OrderNumber = '{2}'"
                                                 , materialCode
                                                 , materialLot
                                                 , orderNumber),
                        OrderBy = "Key"
                    };

                    MethodReturnResult <IList <LineStoreMaterialDetail> > result = client.GetDetail(ref cfg);
                    if (result.Code <= 0 && result.Data != null && result.Data.Count > 0)
                    {
                        lineStoreMaterialDetail = result.Data[0];
                    }
                }
            }


            return(Json(new
            {
                @SupplierCode = lineStoreMaterialDetail.SupplierCode ?? string.Empty,
                @SupplierMaterialLot = lineStoreMaterialDetail.SupplierMaterialLot ?? string.Empty,
                @Attr1 = lineStoreMaterialDetail.Attr1 ?? string.Empty,
                @Attr2 = lineStoreMaterialDetail.Attr2 ?? string.Empty,
                @Qty = lineStoreMaterialDetail.LoadingQty
            }, JsonRequestBehavior.AllowGet));
        }
コード例 #3
0
        /// <summary>
        /// 根据电池箱号获取电池箱信息,数量,效率,颜色,供应商
        /// </summary>
        /// <param name="q"></param>
        /// <returns></returns>
        MaterialReceiptDetail GetBox(string q)
        {
            MaterialReceiptDetail obj = new MaterialReceiptDetail();

            using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient())
            {
                MethodReturnResult <MaterialReceiptDetail> result = client.GetBoxDetail(q);
                if (result.Code <= 0 && result.Data != null)
                {
                    obj = result.Data;
                }
            }

            return(obj);
            //return Json(new
            //{
            //    @SupplierCode = obj.SupplierCode ?? string.Empty,
            //    @SupplierMaterialLot = obj.SupplierMaterialLot ?? string.Empty,
            //    @Attr1 = obj.Attr1 ?? string.Empty
            //}, JsonRequestBehavior.AllowGet);
        }
コード例 #4
0
        public async Task <ActionResult> ExportToExcel(MaterialReceiptDetailQueryViewModel model)
        {
            IList <MaterialReceiptDetail> lst = new List <MaterialReceiptDetail>();

            using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient())
            {
                await Task.Run(() =>
                {
                    PagingConfig cfg = new PagingConfig()
                    {
                        IsPaging = false,
                        OrderBy  = "CreateTime Desc,Key.ReceiptNo,Key.ItemNo",
                        Where    = GetWhereCondition(model)
                    };
                    MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg);

                    if (result.Code == 0)
                    {
                        lst = result.Data;
                    }
                });
            }
            //创建工作薄。
            IWorkbook wb = new HSSFWorkbook();
            //设置EXCEL格式
            ICellStyle style = wb.CreateCellStyle();

            style.FillForegroundColor = 10;
            //有边框
            style.BorderBottom = BorderStyle.THIN;
            style.BorderLeft   = BorderStyle.THIN;
            style.BorderRight  = BorderStyle.THIN;
            style.BorderTop    = BorderStyle.THIN;
            IFont font = wb.CreateFont();

            font.Boldweight = 10;
            style.SetFont(font);
            ICell  cell = null;
            IRow   row  = null;
            ISheet ws   = null;

            for (int j = 0; j < lst.Count; j++)
            {
                if (j % 65535 == 0)
                {
                    ws  = wb.CreateSheet();
                    row = ws.CreateRow(0);
                    #region //列名
                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_ReceiptNo);  //领料号

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_OrderNumber);  //工单号

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_ReceiptDate);  //领料日期

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_ItemNo);  //项目号

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_LineStoreName);  //线别仓

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_MaterialCode);  //物料编码

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue("物料名称");  //物料名称

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_MaterialLot);  //物料批号

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_Qty);  //数量

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_SupplierMaterialLot);  //供应商批号

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_SupplierCode);  //供应商编码

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue("供应商名称");  //供应商名称


                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue("描述");  //描述

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue("编辑人");  //编辑人

                    cell           = row.CreateCell(row.Cells.Count);
                    cell.CellStyle = style;
                    cell.SetCellValue("编辑时间");  //编辑时间
                    #endregion
                    font.Boldweight = 5;
                }

                MaterialReceiptDetail obj   = lst[j];
                MaterialReceipt       mrObj = model.GetMaterialReceipt(obj.Key.ReceiptNo);
                Material m = model.GetMaterial(obj.MaterialCode);
                Supplier s = model.GetSupplier(obj.SupplierCode);
                row = ws.CreateRow(j + 1);

                #region //数据
                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.Key.ReceiptNo);  //领料号

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(mrObj == null ? string.Empty : mrObj.OrderNumber);  //工单号

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(mrObj == null ? string.Empty : string.Format("{0:yyyy-MM-dd}", mrObj.ReceiptDate));  //领料日期

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.Key.ItemNo);  //项目号

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.LineStoreName);  //线别仓

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.MaterialCode);  //物料编码

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(m == null ? string.Empty : m.Name);  //物料名称

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.MaterialLot);  //物料批号

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.Qty);  //数量

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.SupplierMaterialLot);  //供应商批号

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.SupplierCode);  //供应商编码

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(s == null ? string.Empty : s.Name); //供应商名称


                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.Description);  //描述

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(obj.Editor);  //编辑人

                cell           = row.CreateCell(row.Cells.Count);
                cell.CellStyle = style;
                cell.SetCellValue(string.Format("{0:yyyy-MM-dd HH:mm:ss}", obj.EditTime));  //编辑时间
                #endregion
            }

            MemoryStream ms = new MemoryStream();
            wb.Write(ms);
            ms.Flush();
            ms.Position = 0;
            return(File(ms, "application/vnd.ms-excel", "MaterialReceiptData.xls"));
        }