111
This commit is contained in:
		
							parent
							
								
									26a87383a4
								
							
						
					
					
						commit
						86e73f4ef6
					
				| 
						 | 
					@ -0,0 +1,66 @@
 | 
				
			||||||
 | 
					using LY.App.Model;
 | 
				
			||||||
 | 
					using Microsoft.AspNetCore.Http;
 | 
				
			||||||
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace LY.App.Controllers
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public class UploadController : Controller
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        public static readonly string uploadPath = "upload";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        [HttpPost("uploadImg")]
 | 
				
			||||||
 | 
					        public async Task<IActionResult> UploadImg()
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            ApiResult result = new ApiResult();
 | 
				
			||||||
 | 
					            result.code = 1;
 | 
				
			||||||
 | 
					            if (!Request.HasFormContentType)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                return BadRequest("未选择文件");
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            IFormFileCollection cols = Request.Form.Files;
 | 
				
			||||||
 | 
					            if (cols.Count == 0)
 | 
				
			||||||
 | 
					                return BadRequest("上传失败");
 | 
				
			||||||
 | 
					            const string fileFilt = ".gif|.jpg|.jpeg|.png|.bmp";
 | 
				
			||||||
 | 
					            foreach (IFormFile file in cols)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                var fileExtension = Path.GetExtension(file.FileName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                if (fileFilt.IndexOf(fileExtension.ToLower(), StringComparison.Ordinal) <= -1)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    result.msg = "上传的文件格式不正确";
 | 
				
			||||||
 | 
					                    return Ok(result);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                long length = file.Length;
 | 
				
			||||||
 | 
					                if (length > 1024 * 1024 * 5)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    result.msg = "上传的文件不能大于5M";
 | 
				
			||||||
 | 
					                    return Ok(result);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                var strDateTime = DateTime.Now.ToString("yyMMddhhmmssfff");
 | 
				
			||||||
 | 
					                var strRan = Convert.ToString(new Random().Next(100, 999));
 | 
				
			||||||
 | 
					                var fileName = strDateTime + strRan + fileExtension;
 | 
				
			||||||
 | 
					                string path = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "Img"));
 | 
				
			||||||
 | 
					                if (!Directory.Exists(path))
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    Directory.CreateDirectory(path);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                var filePath = Path.Combine(path, fileName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                using (var stream = new FileStream(filePath, FileMode.Create))
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    file.CopyTo(stream);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                result.data = $"/{uploadPath}/{fileName}";
 | 
				
			||||||
 | 
					                result.code = 0;
 | 
				
			||||||
 | 
					                return Ok(result);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            return BadRequest("上传失败");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -60,6 +60,11 @@ namespace LY.App.Model
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
        [SugarColumn(ColumnName = "alt", ColumnDescription = "高度", IsNullable = true)]
 | 
					        [SugarColumn(ColumnName = "alt", ColumnDescription = "高度", IsNullable = true)]
 | 
				
			||||||
        public double Alt { get; set; }
 | 
					        public double Alt { get; set; }
 | 
				
			||||||
 | 
					        [SugarColumn(ColumnName = "img", ColumnDescription = "图片", IsNullable = true)]
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 图片
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string Img { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					@ -96,6 +101,10 @@ namespace LY.App.Model
 | 
				
			||||||
        /// 纬度
 | 
					        /// 纬度
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
        public double Lat { get; set; }
 | 
					        public double Lat { get; set; }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 图片
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string Img { get; set; }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    public class UpdateDevice : AddDevice
 | 
					    public class UpdateDevice : AddDevice
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										16
									
								
								Program.cs
								
								
								
								
							
							
						
						
									
										16
									
								
								Program.cs
								
								
								
								
							| 
						 | 
					@ -10,6 +10,7 @@ using LY.App.Service;
 | 
				
			||||||
using LY.App.Model;
 | 
					using LY.App.Model;
 | 
				
			||||||
using LY.App.MiddleWare;
 | 
					using LY.App.MiddleWare;
 | 
				
			||||||
using LY.App.Common.WebSocket;
 | 
					using LY.App.Common.WebSocket;
 | 
				
			||||||
 | 
					using Microsoft.Extensions.FileProviders;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var builder = WebApplication.CreateBuilder(args);
 | 
					var builder = WebApplication.CreateBuilder(args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -75,19 +76,30 @@ builder.Services.AddTransient<SqlSugarClient>(sp =>
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
        //创建数据库和表的语句仅执行一次 
 | 
					        //创建数据库和表的语句仅执行一次 
 | 
				
			||||||
        //db.DbMaintenance.CreateDatabase();
 | 
					        //db.DbMaintenance.CreateDatabase();
 | 
				
			||||||
        db.CodeFirst.SetStringDefaultLength(2000).InitTables(typeof(LogEntity));
 | 
					      //  db.CodeFirst.SetStringDefaultLength(2000).InitTables(typeof(LogEntity));
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
        //过滤器写在这儿就行了
 | 
					        //过滤器写在这儿就行了
 | 
				
			||||||
        // db.QueryFilter.AddTableFilter<IDeleted>(it => it.IsDeleted == false);
 | 
					        // db.QueryFilter.AddTableFilter<IDeleted>(it => it.IsDeleted == false);
 | 
				
			||||||
    });
 | 
					    });
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//检测并创建图片存储文件目录
 | 
				
			||||||
 | 
					string path = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "Img"));
 | 
				
			||||||
 | 
					if (!Directory.Exists(path))
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    Directory.CreateDirectory(path);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SnowFlakeSingle.WorkId = Convert.ToInt32(builder.Configuration.GetSection("SnowFlakeWordId")?.Value ?? "1");
 | 
					SnowFlakeSingle.WorkId = Convert.ToInt32(builder.Configuration.GetSection("SnowFlakeWordId")?.Value ?? "1");
 | 
				
			||||||
var app = builder.Build();
 | 
					var app = builder.Build();
 | 
				
			||||||
ServiceLocator.Instance = app.Services;
 | 
					ServiceLocator.Instance = app.Services;
 | 
				
			||||||
var device = app.Services.GetService<DeviceService>();
 | 
					var device = app.Services.GetService<DeviceService>();
 | 
				
			||||||
device?.Init();
 | 
					device?.Init();
 | 
				
			||||||
 | 
					app.UseStaticFiles(new StaticFileOptions()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "Img")),
 | 
				
			||||||
 | 
					    RequestPath = "/upload"
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
// Configure the HTTP request pipeline.
 | 
					// Configure the HTTP request pipeline.
 | 
				
			||||||
if (app.Environment.IsDevelopment())
 | 
					if (app.Environment.IsDevelopment())
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue