From 885bd60ed54a0642c48c57a3d685cba24e4c763b Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期日, 08 十二月 2024 11:33:07 +0800 Subject: [PATCH] 1 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 108 insertions(+), 0 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" index 4203711..c1920c5 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" @@ -1,9 +1,12 @@ 锘縰sing AutoMapper; +using Magicodes.ExporterAndImporter.Core; +using Magicodes.ExporterAndImporter.Excel; using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; +using System.Reflection; using System.Text; using System.Threading.Tasks; using WIDESEA_Core; @@ -181,5 +184,110 @@ residueQuantity = needQuantity; return outStocks; } + + //瀵煎嚭 + public override WebResponseContent Export(PageDataOptions options) + { + + WebResponseContent content = new WebResponseContent(); + try + { + string savePath = AppDomain.CurrentDomain.BaseDirectory + $"ExcelExport"; + IExporter exporter = new ExcelExporter(); + //娣诲姞鏉′欢 + string wheres = options.ValidatePageOptions(TProperties); + //鑾峰彇鎺掑簭瀛楁 + Dictionary<string, OrderByType> orderbyDic = options.GetPageDataSort(TProperties); + + List<Dt_StockInfo> entities = BaseDal.QueryData(wheres, orderbyDic); + List<Dt_StockInfoDetail> detdata = _stockInfoDetail.QueryData(); + List<Dt_StockInfodt> stolist= new List<Dt_StockInfodt>(); + for (int i = 0; i < entities.Count; i++) + { + Dt_StockInfoDetail dt_StockIndet = detdata.Where(x => x.StockId == entities[i].Id).FirstOrDefault(); + string MaterialTypet = "鍘熸潗鏂�"; + if (entities[i].MaterialType == (int)InventoryMaterialType.鎴愬搧) + { + MaterialTypet = "鎴愬搧"; + } + else if(entities[i].MaterialType == (int)InventoryMaterialType.绌烘墭) + { + MaterialTypet = "绌烘墭"; + } + + string Wlstatust = "寰呮"; + if (entities[i].Wlstatus== (int)InventoryMaterialStatus.鍚堟牸) + { + Wlstatust = "鍚堟牸"; + } + else if (entities[i].Wlstatus == (int)InventoryMaterialStatus.涓嶅悎鏍�) + { + Wlstatust = "涓嶅悎鏍�"; + } + else if (entities[i].Wlstatus == (int)InventoryMaterialStatus.绌烘墭) + { + Wlstatust = "绌烘墭"; + } + else if (entities[i].Wlstatus == (int)InventoryMaterialStatus.閫�璐�) + { + Wlstatust = "閫�璐�"; + } + else if (entities[i].Wlstatus == (int)InventoryMaterialStatus.杩斿伐) + { + Wlstatust = "杩斿伐"; + } + else if (entities[i].Wlstatus == (int)InventoryMaterialStatus.鐗归噰) + { + Wlstatust = "鐗归噰"; + } + + Dt_StockInfodt dt_ = new Dt_StockInfodt() + { + PalletCode = entities[i].PalletCode, + MaterialType = MaterialTypet, + LocationCode = entities[i].LocationCode, + Wlstatus = Wlstatust, + MaterielCode = dt_StockIndet?.MaterielCode ?? "", // 濡傛灉 dt_StockIndet 涓� null锛屼娇鐢ㄧ┖瀛楃涓蹭綔涓洪粯璁ゅ�� + MaterielName = dt_StockIndet?.MaterielName ?? "", + OrderNo = dt_StockIndet?.OrderNo ?? "", + BatchNo = dt_StockIndet?.BatchNo ?? "", + SerialNumber = dt_StockIndet?.SerialNumber ?? "", + StockQuantity = dt_StockIndet?.StockQuantity ?? 0, // 鍋囪 StockQuantity 鏄暟鍊肩被鍨嬶紝浣跨敤 0 浣滀负榛樿鍊� + BatchNoName = dt_StockIndet?.BatchNoName ?? "", + CreateDate = dt_StockIndet?.CreateDate ?? DateTime.MinValue, // 鍋囪 CreateDate 鏄棩鏈熺被鍨嬶紝浣跨敤榛樿鏃堕棿 + Remark = entities[i].Remark, + }; + stolist.Add(dt_); + } + + byte[] data = exporter.ExportAsByteArray(stolist).Result; + + string fileName = "1.xlsx"; + + FileHelper.WriteFile(savePath, fileName, data); + + content = WebResponseContent.Instance.OK(data: savePath + "\\" + fileName); + } + catch (Exception ex) + { + content = WebResponseContent.Instance.Error(ex.Message); + } + return content; + } + + public class Dt_StockInfodt: Dt_StockInfoDetail + { + [ExporterHeader(DisplayName = "鎵樼洏缂栧彿")] + public string PalletCode { get; set; } + + [ExporterHeader(DisplayName = "绫诲瀷")] + public string MaterialType { get; set; } + + [ExporterHeader(DisplayName = "璐т綅缂栧彿")] + public string LocationCode { get; set; } + + [ExporterHeader(DisplayName = "鐗╂枡鐘舵��")] + public string Wlstatus { get; set; } + } } } -- Gitblit v1.9.3