From b7f53ba61fbc1844d7b92ff852762b140d46ab54 Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期一, 23 六月 2025 19:58:16 +0800
Subject: [PATCH] 最新
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs | 127 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 127 insertions(+), 0 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
index ec2fd1c..999b4a4 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
@@ -1,12 +1,21 @@
锘縰sing AutoMapper;
+using Magicodes.ExporterAndImporter.Core;
+using Magicodes.ExporterAndImporter.Core.Models;
+using Magicodes.ExporterAndImporter.Excel;
+using MailKit.Search;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc.RazorPages;
+using Org.BouncyCastle.Asn1.X509;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Reflection;
using System.Reflection.Metadata;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
+using WIDESEA_Core.Attributes;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
using WIDESEA_Core.Enums;
@@ -20,6 +29,7 @@
using WIDESEA_IStockService;
using WIDESEA_ITaskInfoRepository;
using WIDESEA_Model.Models;
+using OrderByType = SqlSugar.OrderByType;
namespace WIDESEA_InboundService
{
@@ -245,5 +255,122 @@
return WebResponseContent.Instance.OK(data: obj);
}
}
+
+ //涓嬭浇妯$増
+ public virtual WebResponseContent DownLoadTemplate()
+ {
+ WebResponseContent content = new WebResponseContent();
+ IExporter exporter = new ExcelExporter();
+ Inbounddaoc inbounddaoc = new Inbounddaoc();
+ byte[] data = exporter.ExportHeaderAsByteArray(inbounddaoc).Result;
+ string fileName = "";
+ fileName ="妯℃澘.xlsx";
+ string savePath = AppDomain.CurrentDomain.BaseDirectory + $"ExcelImprotTemplate";
+ FileHelper.WriteFile(savePath, fileName, data);
+
+ content = WebResponseContent.Instance.OK(data: savePath + "\\" + fileName);
+ return content;
+ }
+
+ //瀵煎叆
+ public virtual WebResponseContent Import(List<IFormFile> files)
+ {
+ try
+ {
+ if (files == null || files.Count == 0)
+ return new WebResponseContent { Status = true, Message = "璇烽�夋嫨涓婁紶鐨勬枃浠�" };
+
+ Microsoft.AspNetCore.Http.IFormFile formFile = files[0];
+
+ // 浣跨敤Path.Combine锛岄伩鍏嶇‖缂栫爜璺緞鍒嗛殧绗�
+ string dicPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ExcelImport", DateTime.Now.ToString("yyyyMMdd"));
+ if (!Directory.Exists(dicPath))
+ Directory.CreateDirectory(dicPath);
+
+ string fileName = $"{Guid.NewGuid()}_{formFile.FileName}";
+ string fullPath = Path.Combine(dicPath, fileName);
+
+ // 浣跨敤FileStream淇濆瓨鏂囦欢
+ using (FileStream stream = new FileStream(fullPath, FileMode.Create))
+ {
+ formFile.CopyTo(stream);
+ }
+
+ // 鍒濆鍖朎xcel瀵煎叆宸ュ叿
+ ExcelImporter importer = new ExcelImporter();
+
+ // 瀵煎叆Excel鏁版嵁
+ ImportResult<Inbounddaoc> importResult = importer.Import<Inbounddaoc>(fullPath, "").Result;
+
+
+ if (importResult.HasError)
+ {
+ return WebResponseContent.Instance.Error(importResult.TemplateErrors.Serialize());
+ }
+ // 鍋囪BaseDal鏄暟鎹闂眰锛岃繘琛屾暟鎹瓨鍌�
+ List<Dt_InboundOrder> dt_Inbounds = new List<Dt_InboundOrder>();
+
+
+
+ foreach (var item in importResult.Data)
+ {
+ int Startingcolumn = 0;
+ int Terminationcolumn = 0;
+ if (item.OrderType == "鎴愬搧")
+ {
+ if (item.UpperOrderNo.Contains("鍥炴枡"))
+ {
+ Startingcolumn = 14;
+ Terminationcolumn = 37;
+ }
+ }
+
+ Dt_InboundOrder dt_2 = new Dt_InboundOrder()
+ {
+ OrderName = item.OrderName,
+ UpperOrderNo = item.UpperOrderNo,
+ OrderType = item.OrderType == "鍘熸潗鏂�" ? (int)InventoryMaterialType.鍘熸潗鏂� : (int)InventoryMaterialType.鎴愬搧,
+ OrderNo = item.OrderNo,
+ CreateType = (int)CreateType.daoru,
+ Creater = "瀵煎叆",
+ CreateDate = DateTime.Now,
+ Startingcolumn= Startingcolumn,
+ Terminationcolumn= Terminationcolumn
+ };
+ dt_Inbounds.Add(dt_2);
+ }
+ BaseDal.AddData(dt_Inbounds);
+
+ return WebResponseContent.Instance.OK();
+ }
+ catch (Exception ex)
+ {
+ // 鎹曡幏寮傚父骞惰繑鍥為敊璇秷鎭�
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ public class Inbounddaoc
+ {
+ [ImporterHeader(Name = "鐗╂枡鍙�")]
+ [ExporterHeader(DisplayName = "鐗╂枡鍙�")]
+ [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡鍙�", ColumnName = "鐗╂枡鍙�")]
+ public string OrderName { get; set; }
+
+ [ImporterHeader(Name = "鐗╂枡鍚嶇О")]
+ [ExporterHeader(DisplayName = "鐗╂枡鍚嶇О")]
+ [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鐗╂枡鍚嶇О", ColumnName = "鐗╂枡鍚嶇О")]
+ public string UpperOrderNo { get; set; }
+
+ [ImporterHeader(Name = "绫诲瀷")]
+ [ExporterHeader(DisplayName = "绫诲瀷")]
+ [SugarColumn(IsNullable = true, ColumnDescription = "绫诲瀷", ColumnName = "绫诲瀷")]
+ public string OrderType { get; set; }
+
+ [ImporterHeader(Name = "鐗╂枡璇︽儏")]
+ [ExporterHeader(DisplayName = "鐗╂枡璇︽儏")]
+ [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鐗╂枡璇︽儏", ColumnName = "鐗╂枡璇︽儏")]
+ public string OrderNo { get; set; }
+ }
}
}
--
Gitblit v1.9.3