From 7ff74f599084561338eef1230db5aa45f74565f8 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期一, 15 四月 2024 18:03:33 +0800
Subject: [PATCH] 1.ERP订单关闭增加单据id 2.MES工单关闭增加源单id关联

---
 VueWebCoreApi/Startup.cs |   53 +++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 47 insertions(+), 6 deletions(-)

diff --git a/VueWebCoreApi/Startup.cs b/VueWebCoreApi/Startup.cs
index 9113269..a9f68a3 100644
--- a/VueWebCoreApi/Startup.cs
+++ b/VueWebCoreApi/Startup.cs
@@ -10,15 +10,18 @@
 using Microsoft.AspNetCore.HttpsPolicy;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.AspNetCore.Mvc.Authorization;
+using Microsoft.AspNetCore.StaticFiles;
 using Microsoft.Extensions.Configuration;
 using Microsoft.Extensions.DependencyInjection;
 using Microsoft.Extensions.DependencyInjection.Extensions;
 using Microsoft.Extensions.Hosting;
 using Microsoft.Extensions.Logging;
 using Microsoft.OpenApi.Models;
+using Newtonsoft.Json.Serialization;
 using Quartz;
 using Quartz.Impl;
 using Quartz.Spi;
+using Swashbuckle.AspNetCore.SwaggerUI;
 using System;
 using System.Collections.Generic;
 using System.IO;
@@ -53,25 +56,34 @@
             {
                 op.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver();
                 op.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
+                // 返回数据首字母不小写,CamelCasePropertyNamesContractResolver是小写
+                op.SerializerSettings.ContractResolver = new DefaultContractResolver();
+            });
+            //解决文档中首字母被小写的问题
+            services.AddControllers().AddJsonOptions(config =>
+            {
+                config.JsonSerializerOptions.PropertyNamingPolicy = null;
             });
             #region Swagger 第二种方式
             services.AddSwaggerGen(c =>
             {
                 typeof(OpenApiGroup).GetEnumNames().ToList().ForEach(version =>
                 {
-
                     c.SwaggerDoc(version, new OpenApiInfo()
                     {
                         Title = $"新凯迪MesApi文档:{version}",
                         Version = version,
-                        Description = $"Panda.Sewerage :  {version}  "
+                        Description = $"Panda.Sewerage :  {version}  ",
                     });
                 });
+
                 string basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);
                 string xmlPath = Path.Combine(basePath, "VueWebCoreApi.xml");
                 c.IncludeXmlComments(xmlPath, true);
             });
             #endregion
+
+
             // 设置配置
             AppSetting.SetAppSetting(Configuration.GetSection("ConnectionStrings"));
             //log4net配置
@@ -87,6 +99,7 @@
             services.AddSingleton<ISchedulerFactory, StdSchedulerFactory>();
             services.AddSingleton<IJobFactory, IOCJobFactory>();
 
+
             //跨域设置
             services.AddCors(options =>
             {
@@ -99,7 +112,7 @@
             });
             //设置SignalR
             services.AddSignalR();
-           
+
 
             //设置session,并设置超时时间
             services.AddSession(o =>
@@ -110,7 +123,6 @@
             services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie();
 
         }
-
         // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
         public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IHostApplicationLifetime applicationLeftTime, ILoggerFactory loggerFactory)
         {
@@ -122,6 +134,7 @@
             {
                 DataOperator.SetConnectionString1(Convert.ToString(AppSetting.GetAppSetting("DBServer")));
             });
+
             #region Swagger分组第二种
             app.UseSwagger();
             app.UseSwaggerUI(c =>
@@ -133,6 +146,7 @@
                 {
                     c.SwaggerEndpoint($"/swagger/{version}/swagger.json", $"{version}");
                 });
+
             });
             #endregion
             app.UseHttpsRedirection();
@@ -140,6 +154,18 @@
             app.UseRouting();
 
             app.UseAuthorization();
+            //添加静态文件中间件
+            app.UseDefaultFiles();
+            //添加授权文件
+            app.UseStaticFiles(new StaticFileOptions() { 
+                ContentTypeProvider = new FileExtensionContentTypeProvider() { 
+                    Mappings = {
+                        [".xls"] = "application/vnd.ms-excel", 
+                        [".apk"] = "application/vnd.android.package-archive"
+                    } 
+                } 
+            });
+            app.UseStaticFiles();
             //跨域
             app.UseCors("cors");
             //用户session服务
@@ -150,14 +176,29 @@
             app.UseStaticHostEnviroment();
             //Quartz
             app.UseQuartz(env).UseStaticHttpContext();
+            //配置Excel下载
+            //app.UseStaticFiles(
+            //    new StaticFileOptions
+            //    {
+            //      //设置不限制content-type 
+            //       ServeUnknownFileTypes = true
+            //    });
+            //app.UseStaticFiles(new StaticFileOptions()
+            //{
+            //    ContentTypeProvider = new FileExtensionContentTypeProvider()
+            //    {
+            //        Mappings = { [".exe"] = "application/octect-stream" }
+            //    }
+            //});
+
             app.UseEndpoints(endpoints =>
             {
                 endpoints.MapControllers();
                 endpoints.MapHub<ChatHub>("/ChatHub", options =>
                 {
                     options.Transports =
-                        HttpTransportType.WebSockets |
-                        HttpTransportType.LongPolling;
+                    HttpTransportType.WebSockets |
+                    HttpTransportType.LongPolling;
                 });
             });
             loggerFactory.AddLog4Net("Config/log4net.config");

--
Gitblit v1.9.3