home page for App
This commit is contained in:
@ -52,6 +52,7 @@ public partial class ApiController : BaseController
|
||||
{
|
||||
return Ok(new DefinitionResult
|
||||
{
|
||||
ApiVersion = Program.Version,
|
||||
Categories = Constants.Categories,
|
||||
Events = Constants.Events,
|
||||
});
|
||||
|
@ -5,6 +5,11 @@
|
||||
/// </summary>
|
||||
public record DefinitionResult
|
||||
{
|
||||
/// <summary>
|
||||
/// API 版本号
|
||||
/// </summary>
|
||||
public required string ApiVersion { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// 花草分类
|
||||
/// </summary>
|
||||
|
@ -218,6 +218,7 @@ public abstract partial class BaseController : ControllerBase
|
||||
using var ms = new MemoryStream();
|
||||
ms.Write(headers, 0, count);
|
||||
|
||||
#if __OLD_READER__
|
||||
// reading
|
||||
const int size = 16384;
|
||||
var buffer = new byte[size];
|
||||
@ -225,17 +226,24 @@ public abstract partial class BaseController : ControllerBase
|
||||
{
|
||||
ms.Write(buffer, 0, count);
|
||||
}
|
||||
#else
|
||||
stream.CopyTo(ms);
|
||||
#endif
|
||||
var data = ms.ToArray();
|
||||
var name = file.FileName;
|
||||
var ext = Path.GetExtension(name);
|
||||
var path = $"{WebUtility.UrlEncode(Path.GetFileNameWithoutExtension(name))}_{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}{ext}";
|
||||
|
||||
var image = SkiaSharp.SKImage.FromEncodedData(data);
|
||||
|
||||
return new FileResult
|
||||
{
|
||||
Filename = name,
|
||||
FileType = ext,
|
||||
Path = path,
|
||||
Content = data
|
||||
Content = data,
|
||||
Width = image.Width,
|
||||
Height = image.Height
|
||||
};
|
||||
}
|
||||
}
|
||||
@ -364,30 +372,20 @@ public record FileResult
|
||||
/// <summary>
|
||||
/// 储存路径
|
||||
/// </summary>
|
||||
public required string Path { get; set; }
|
||||
public required string Path { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// 文件内容
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required byte[] Content { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// 照片宽度
|
||||
/// </summary>
|
||||
public required int Width { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// 照片高度
|
||||
/// </summary>
|
||||
public required int Height { get; init; }
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 照片参数
|
||||
/// </summary>
|
||||
public record PhotoParameter
|
||||
{
|
||||
/// <summary>
|
||||
/// 花草 id
|
||||
/// </summary>
|
||||
[Required]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 封面照片
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required IFormFile Photo { get; set; }
|
||||
}
|
@ -88,6 +88,6 @@ partial class BaseController
|
||||
/// <returns></returns>
|
||||
protected int AddPhotoItem(PhotoItem item)
|
||||
{
|
||||
return database.Database.ExecuteSql($"INSERT INTO \"photos\"(\"fid\",\"rid\",\"filetype\",\"filename\",\"path\",\"dateupload\") VALUES({item.FlowerId},{item.RecordId},{item.FileType},{item.FileName},{item.Path},{item.DateUploadUnixTime})");
|
||||
return database.Database.ExecuteSql($"INSERT INTO \"photos\"(\"fid\",\"uid\",\"rid\",\"filetype\",\"filename\",\"path\",\"dateupload\",\"width\",\"height\") VALUES({item.FlowerId},{item.OwnerId},{item.RecordId},{item.FileType},{item.FileName},{item.Path},{item.DateUploadUnixTime},{item.Width},{item.Height})");
|
||||
}
|
||||
}
|
||||
|
@ -279,7 +279,9 @@ public class EventApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(p);
|
||||
|
||||
@ -402,7 +404,9 @@ public class EventApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(cover);
|
||||
|
||||
@ -498,7 +502,9 @@ public class EventApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = user.ActiveDateUnixTime ?? DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
|
||||
DateUploadUnixTime = user.ActiveDateUnixTime ?? DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(p);
|
||||
|
||||
@ -594,7 +600,9 @@ public class EventApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = user.ActiveDateUnixTime ?? DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
|
||||
DateUploadUnixTime = user.ActiveDateUnixTime ?? DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(p);
|
||||
|
||||
|
@ -518,7 +518,9 @@ public class FlowerApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(cover);
|
||||
|
||||
@ -639,7 +641,9 @@ public class FlowerApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
database.Photos.Add(item);
|
||||
SaveDatabase();
|
||||
@ -776,7 +780,9 @@ public class FlowerApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(cover);
|
||||
|
||||
@ -893,7 +899,9 @@ public class FlowerApiController : BaseController
|
||||
FileType = file.FileType,
|
||||
FileName = file.Filename,
|
||||
Path = file.Path,
|
||||
DateUploadUnixTime = now
|
||||
DateUploadUnixTime = now,
|
||||
Width = file.Width,
|
||||
Height = file.Height
|
||||
};
|
||||
AddPhotoItem(cover);
|
||||
|
||||
|
Reference in New Issue
Block a user