添加项目文件。
This commit is contained in:
149
Atomx.Common/Entities/Address.cs
Normal file
149
Atomx.Common/Entities/Address.cs
Normal file
@@ -0,0 +1,149 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户收货地址信息
|
||||
/// </summary>
|
||||
[Table("Addresses")]
|
||||
public class Address
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 添加地址用户
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 收件人姓名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮件地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 电话号码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 公司
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Company { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 国家ID
|
||||
/// </summary>
|
||||
public long CountryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 国家
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Country { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 省份
|
||||
/// </summary>
|
||||
public long ProvinceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 省、州
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Province { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 城市
|
||||
/// </summary>
|
||||
public long CityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 城市
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string City { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 地区
|
||||
/// </summary>
|
||||
public long RegionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地区街
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Region { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮政编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(15)")]
|
||||
public string PostalCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 详细地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string AddressDetails { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 完整地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(1024)")]
|
||||
public string FullAddress { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 地址所在经度
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(10,6)")]
|
||||
public decimal Longitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地址所在纬度
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(10,6)")]
|
||||
public decimal Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否是虚拟地址
|
||||
/// </summary>
|
||||
public bool IsVirtual { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地址使用次数
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否删除
|
||||
/// </summary>
|
||||
public bool IsDelete { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 建立时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
94
Atomx.Common/Entities/Admin.cs
Normal file
94
Atomx.Common/Entities/Admin.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 系统管理员表
|
||||
/// </summary>
|
||||
[Table("Admins")]
|
||||
public class Admin
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Username { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 登录密码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Password { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮箱
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 手机号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Mobile { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 头像
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Avatar { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 角色ID
|
||||
/// </summary>
|
||||
public int RoleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 时区校对
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(4)")]
|
||||
public string TimeOffset { get; set; } = "0";
|
||||
|
||||
/// <summary>
|
||||
/// 账号数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 登录次数
|
||||
/// </summary>
|
||||
public int LoginCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后登录时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? LastLogin { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后登录时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string LastIp { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
99
Atomx.Common/Entities/AppVersion.cs
Normal file
99
Atomx.Common/Entities/AppVersion.cs
Normal file
@@ -0,0 +1,99 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 应用版本
|
||||
/// </summary>
|
||||
[Table("AppVersions")]
|
||||
public class AppVersion
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属站点应用ID
|
||||
/// </summary>
|
||||
public long SiteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 运行平台
|
||||
/// </summary>
|
||||
public int Platform { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 应用名称KEY
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string AppName { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 版本标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 版本
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Version { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 主版本号(major)无法向下兼容时,需要递增
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public int VersionX { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 次版本号(minor)新增新的特性时,需要递增
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public int VersionY { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 修订版本号(patch)修复问题时,需要递增
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public int VersionZ { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 版本日期
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public int VersionDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 版本状态 例如:b 表示bate版,即测试版
|
||||
/// </summary>
|
||||
public int VersionState { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新内容说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Content { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 版本状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
69
Atomx.Common/Entities/Area.cs
Normal file
69
Atomx.Common/Entities/Area.cs
Normal file
@@ -0,0 +1,69 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 地区(国家、省、市、区)
|
||||
/// </summary>
|
||||
public class Area
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级ID
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地区名称
|
||||
/// </summary>
|
||||
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 首字母
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(1)")]
|
||||
public string Initial { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 双字母代码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(2)")]
|
||||
public string TwoLetterISOCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 三字母代码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(3)")]
|
||||
public string ThreeLetterISOCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数字代码
|
||||
/// </summary>
|
||||
public int NumericISOCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许配送
|
||||
/// </summary>
|
||||
public bool AllowShipping { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 显示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
119
Atomx.Common/Entities/Category.cs
Normal file
119
Atomx.Common/Entities/Category.cs
Normal file
@@ -0,0 +1,119 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 分类
|
||||
/// </summary>
|
||||
public class Category
|
||||
{
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属站点应用ID
|
||||
/// </summary>
|
||||
public long SiteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类类型,1内容,2产品,3社区
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级分类ID
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(25)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 分类URL缩略名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Slug { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Meta描述介绍
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string MetaDescription { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Meta关键词
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string MetaKeywords { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 过滤属性IDs
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string FilterAttributes { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 分类图片
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Image { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 分类页 banner
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Banner { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 只是一个节点
|
||||
/// </summary>
|
||||
public bool IsNode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 层级深度
|
||||
/// </summary>
|
||||
public int Depth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 层级路径
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Path { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 统计量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
84
Atomx.Common/Entities/Comment.cs
Normal file
84
Atomx.Common/Entities/Comment.cs
Normal file
@@ -0,0 +1,84 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 评论
|
||||
/// </summary>
|
||||
[Table("Comments")]
|
||||
public class Comment
|
||||
{
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属站点应用ID
|
||||
/// </summary>
|
||||
public long SiteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发布评论用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 内容ID
|
||||
/// </summary>
|
||||
public long PostId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级评论ID,0表示根评论
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 引用评论ID,0表示不引用
|
||||
/// </summary>
|
||||
public long QuoteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 评论信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Content { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 支持的点赞数
|
||||
/// </summary>
|
||||
public int LikeCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 回复的评论数
|
||||
/// </summary>
|
||||
public int Replies { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 评论IP
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Ip { get ; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 评论状态,0-待审核,1-已发布,2-垃圾评论,3-回收站
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
64
Atomx.Common/Entities/Corporation.cs
Normal file
64
Atomx.Common/Entities/Corporation.cs
Normal file
@@ -0,0 +1,64 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 公司信息
|
||||
/// </summary>
|
||||
[Table("Corporations")]
|
||||
public class Corporation
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 公司名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 店铺网点数量
|
||||
/// </summary>
|
||||
public int StoreCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品数量
|
||||
/// </summary>
|
||||
public int ProductCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品数量
|
||||
/// </summary>
|
||||
public int GoodsCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据删除时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? DeleteTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
35
Atomx.Common/Entities/CorporationManufacturerRelation.cs
Normal file
35
Atomx.Common/Entities/CorporationManufacturerRelation.cs
Normal file
@@ -0,0 +1,35 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 企业供应商关系
|
||||
/// </summary>
|
||||
[Table("CorporationManufacturerRelations")]
|
||||
public class CorporationManufacturerRelation
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性关联数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 企业ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应制造商ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
}
|
||||
}
|
||||
96
Atomx.Common/Entities/CorporationStaff.cs
Normal file
96
Atomx.Common/Entities/CorporationStaff.cs
Normal file
@@ -0,0 +1,96 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
[Table("CorporationStaffs")]
|
||||
public class CorporationStaff
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Username { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 登录密码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Password { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮箱
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 手机号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Mobile { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 头像
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Avatar { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 角色ID
|
||||
/// </summary>
|
||||
public int RoleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 时区校对
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(4)")]
|
||||
public string TimeOffset { get; set; } = "0";
|
||||
|
||||
/// <summary>
|
||||
/// 账号数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 登录次数
|
||||
/// </summary>
|
||||
public int LoginCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后登录时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? LastLogin { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后登录时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string LastIp { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
43
Atomx.Common/Entities/CorporationUserRelation.cs
Normal file
43
Atomx.Common/Entities/CorporationUserRelation.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户公司关系
|
||||
/// </summary>
|
||||
[Table("CorporationUserRelations")]
|
||||
public class CorporationUserRelation
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
94
Atomx.Common/Entities/Currency.cs
Normal file
94
Atomx.Common/Entities/Currency.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 货币信息
|
||||
/// </summary>
|
||||
public class Currency
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 货币名称,系统
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 货币标题,识别
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 货币单位代码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(10)")]
|
||||
public string CurrencyCode { get; set; }= string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 本地显示
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(15)")]
|
||||
public string DisplayLocale { get; set;} = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 货币符号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(8)")]
|
||||
public string Symbolic { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数字自定义格式化
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string CustomFormatting { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 兑换汇率
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(16, 4)")]
|
||||
public decimal Rate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否显示
|
||||
/// </summary>
|
||||
public bool EnableDisplay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 启用支付
|
||||
/// </summary>
|
||||
public bool EnablePay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 建立时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
73
Atomx.Common/Entities/CurrencyChannelRelation.cs
Normal file
73
Atomx.Common/Entities/CurrencyChannelRelation.cs
Normal file
@@ -0,0 +1,73 @@
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 货币与支付通道关联表
|
||||
/// </summary>
|
||||
public class CurrencyChannelRelation
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 货币支付通道标题
|
||||
/// </summary>
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 货币ID
|
||||
/// </summary>
|
||||
public int CurrencyId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支付通道ID
|
||||
/// </summary>
|
||||
public int PayChannelId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 每天可用开始时间
|
||||
/// </summary>
|
||||
public int StartTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 每天可用暂停时间
|
||||
/// </summary>
|
||||
public int EndTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 每天可用时间的时区
|
||||
/// </summary>
|
||||
public int TimeZone { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 通道费率
|
||||
/// </summary>
|
||||
public decimal Rate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 扩展信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Extended { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 通道状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 建立时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
71
Atomx.Common/Entities/Language.cs
Normal file
71
Atomx.Common/Entities/Language.cs
Normal file
@@ -0,0 +1,71 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 语言
|
||||
/// </summary>
|
||||
[Table("Languages")]
|
||||
public class Language
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 语言名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 语言标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 语言名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(25)")]
|
||||
public string Culture { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 国旗
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string FlagImage { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用,系统面
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 多语言资源的版本,可以是时间戳或哈希
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(25)")]
|
||||
public string ResourceVersion { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
42
Atomx.Common/Entities/LocaleResource.cs
Normal file
42
Atomx.Common/Entities/LocaleResource.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 本地化多语言资源,用于系统文本多语言
|
||||
/// </summary>
|
||||
[Table("LocaleResources")]
|
||||
public class LocaleResource
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 语言编码
|
||||
/// </summary>
|
||||
public int LanguageId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 资源名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 资源内容值
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(1000)")]
|
||||
public string Value { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
46
Atomx.Common/Entities/LocalizedProperty.cs
Normal file
46
Atomx.Common/Entities/LocalizedProperty.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据本地化属性值,适用于数据多语言
|
||||
/// </summary>
|
||||
[Table("LocalizedProperties")]
|
||||
public class LocalizedProperty
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 语言编码
|
||||
/// </summary>
|
||||
public int LanguageNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据实体ID
|
||||
/// </summary>
|
||||
public long EntityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据KEY
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Key { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据值
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Value { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
88
Atomx.Common/Entities/Manufacturer.cs
Normal file
88
Atomx.Common/Entities/Manufacturer.cs
Normal file
@@ -0,0 +1,88 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 制造商供应商数据
|
||||
/// </summary>
|
||||
[Table("Manufacturers")]
|
||||
public class Manufacturer
|
||||
{
|
||||
/// <summary>
|
||||
/// 制造商ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 制造商名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否是供应商
|
||||
/// </summary>
|
||||
public bool IsVendor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 品牌LOGO
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(300)")]
|
||||
public string Logo { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 品牌制造商描述
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(512)")]
|
||||
public string Description { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Meta标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string MetaTitle { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Meta标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string MetaKeywords { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Meta标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(512)")]
|
||||
public string MetaDescription { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 品牌产品数量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 显示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 建立时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
43
Atomx.Common/Entities/ManufacturerProductRelation.cs
Normal file
43
Atomx.Common/Entities/ManufacturerProductRelation.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 制造商产品关系
|
||||
/// </summary>
|
||||
[Table("ManufacturerProductRelations")]
|
||||
public class ManufacturerProductRelation
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应制造商ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预设默认制造加工费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal ProcessingFee { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预设默认附加工费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal AdditionalFee { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
45
Atomx.Common/Entities/Material.cs
Normal file
45
Atomx.Common/Entities/Material.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 物料原料类型数据
|
||||
/// </summary>
|
||||
[Table("Materials")]
|
||||
public class Material
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料归属店铺网点ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料数量
|
||||
/// </summary>
|
||||
public decimal Quantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
66
Atomx.Common/Entities/MaterialBatch.cs
Normal file
66
Atomx.Common/Entities/MaterialBatch.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 原料采购批次
|
||||
/// </summary>
|
||||
[Table("MaterialBatchs")]
|
||||
public class MaterialBatch
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型:采购、借调、借调归还
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料数据ID
|
||||
/// </summary>
|
||||
public long MaterialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料归属店铺网点ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料当前数量
|
||||
/// </summary>
|
||||
public decimal Quantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料批次总量
|
||||
/// </summary>
|
||||
public decimal TotalQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料采购价格
|
||||
/// </summary>
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
81
Atomx.Common/Entities/MaterialRecord.cs
Normal file
81
Atomx.Common/Entities/MaterialRecord.cs
Normal file
@@ -0,0 +1,81 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 原料详细记录,采购入库、使用出库、借调、归还、盘点校对
|
||||
/// </summary>
|
||||
[Table("MaterialRecords")]
|
||||
public class MaterialRecord
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作类型,采购入库、使用出库、借调出库、归还入库、盘点校对
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料Id
|
||||
/// </summary>
|
||||
public long MaterialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属原料批次ID
|
||||
/// </summary>
|
||||
public long MaterialBatchId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司id
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据店铺网点id
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 原料价格
|
||||
/// </summary>
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数量
|
||||
/// </summary>
|
||||
public decimal Quantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用原料产生的费用
|
||||
/// </summary>
|
||||
public decimal Expenses { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 标记
|
||||
/// </summary>
|
||||
public int Mark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 注册数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
}
|
||||
}
|
||||
98
Atomx.Common/Entities/Menu.cs
Normal file
98
Atomx.Common/Entities/Menu.cs
Normal file
@@ -0,0 +1,98 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 菜单数据,可用于后台菜单和其他菜单,通过Type约定
|
||||
/// </summary>
|
||||
[Table("Menus")]
|
||||
public class Menu
|
||||
{
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类类型,1-管理后台系统
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级分类ID
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 分类图标
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Icon { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 菜单分组,针对折叠菜单效果
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Key { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 菜单链接的URL
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Url { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 权限代码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Code { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否外链接
|
||||
/// </summary>
|
||||
public bool IsLink { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 层级深度
|
||||
/// </summary>
|
||||
public int Depth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 层级路径
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Path { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
65
Atomx.Common/Entities/MessageTemplate.cs
Normal file
65
Atomx.Common/Entities/MessageTemplate.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 系统消息模版
|
||||
/// </summary>
|
||||
[Table("MessageTemplates")]
|
||||
public class MessageTemplate
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息模板类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 信息模板KEY
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Key { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 消息模板名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 消息标题
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 消息内容
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Body { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
363
Atomx.Common/Entities/Order.cs
Normal file
363
Atomx.Common/Entities/Order.cs
Normal file
@@ -0,0 +1,363 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单
|
||||
/// </summary>
|
||||
[Table("Orders")]
|
||||
public class Order
|
||||
{
|
||||
// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单号
|
||||
/// </summary>
|
||||
public long OrderNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 平台ID,1自有商城,2淘宝,3天猫,4京东,5拼多多,6抖音,7快手,8小红书等
|
||||
/// </summary>
|
||||
public int PlatformId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 平台订单号
|
||||
/// </summary>
|
||||
public long PlatformOrderNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否虚拟数据
|
||||
/// </summary>
|
||||
public bool IsVirtual { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单商品供应商ID
|
||||
/// </summary>
|
||||
public long VendorId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 成交店铺ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售人员Id
|
||||
/// </summary>
|
||||
public long SalespersonId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下单用户
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 收件人姓名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮件地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 电话号码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 公司
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Company { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 国家ID
|
||||
/// </summary>
|
||||
public long CountryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 国家
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Country { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 省份
|
||||
/// </summary>
|
||||
public long ProvinceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 省、州
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Province { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 城市
|
||||
/// </summary>
|
||||
public long CityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 城市
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string City { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 地区
|
||||
/// </summary>
|
||||
public long RegionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地区街
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string Region { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮政编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(15)")]
|
||||
public string PostalCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 详细地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string AddressDetails { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 完整地址
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(1024)")]
|
||||
public string FullAddress { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 地址所在经度
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(10,6)")]
|
||||
public decimal Longitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地址所在纬度
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(10,6)")]
|
||||
public decimal Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单原市场总价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
|
||||
public decimal TotalMarketPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品销售总价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
|
||||
public decimal TotalPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 折扣总额
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal DiscountAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单总价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal OrderPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单个数
|
||||
/// </summary>
|
||||
public int ProductCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 购买产品总数量
|
||||
/// </summary>
|
||||
public int TotalQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 税费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(8,4)")]
|
||||
public decimal Taxes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 运费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal ShippingCost { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单使用的优惠券ID
|
||||
/// </summary>
|
||||
public long CouponId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 客户支付单ID
|
||||
/// </summary>
|
||||
public long OrderPaymentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 付款方式,支付通道
|
||||
/// </summary>
|
||||
public int PaymentChannel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单实付总额
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal PaymentAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支付状态
|
||||
/// </summary>
|
||||
public int PaymentStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 付款时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? PaymentTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家利润
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal StoreProfit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家店铺是否提货
|
||||
/// </summary>
|
||||
public bool StorePickedUp { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖点店铺提货时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? StorePickedUpTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家回款时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? StorePaybackTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家订单利润结算时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? StoreProfitSettlementTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应商是否确认订单
|
||||
/// </summary>
|
||||
public bool IsConfirmed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应商订单确认时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? ConfirmedTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否已评论
|
||||
/// </summary>
|
||||
public bool Reviewed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 扩展信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Extended { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 订单状态,(待付款,待发货,待签收,待结算,订单取消,订单过期,支付失败)
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string? Remark { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 卖家下单备注信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string? Message { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 物流快递公司编号
|
||||
/// </summary>
|
||||
public long ExpressId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 快递公司
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(25)")]
|
||||
public string ExpressName { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 快递单号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(30)")]
|
||||
public string WaybillNumber { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 发货状态
|
||||
/// </summary>
|
||||
public int DeliveryStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发货时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime? DeliveryTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 包裹签收时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime? SigningTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下单时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
186
Atomx.Common/Entities/OrderItem.cs
Normal file
186
Atomx.Common/Entities/OrderItem.cs
Normal file
@@ -0,0 +1,186 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单详情数据
|
||||
/// </summary>
|
||||
[Table("OrderItems")]
|
||||
public class OrderItem
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单商品明细ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单ID
|
||||
/// </summary>
|
||||
public long OrderId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 平台ID,1自有商城,2淘宝,3天猫,4京东,5拼多多,6抖音,7快手,8小红书等
|
||||
/// </summary>
|
||||
public int PlatformId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下单购买用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仓库ID
|
||||
/// </summary>
|
||||
public long WarehouseId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商城产品信息ID
|
||||
/// </summary>
|
||||
public long ProductListingId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售产品的店铺ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU ID,0则表示无SKU ID
|
||||
/// </summary>
|
||||
public long SkuId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应商ID
|
||||
/// </summary>
|
||||
public long VendorId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 品牌ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 商品封面图
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string Image { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 购买数量
|
||||
/// </summary>
|
||||
public int Quantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许退货
|
||||
/// </summary>
|
||||
public bool AllowReturn { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许换货
|
||||
/// </summary>
|
||||
public bool AllowExchange { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU数据 JSON信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string AttributesJson { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品SKU编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string SkuNumber { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 运费模板ID,0表示全国免费包邮
|
||||
/// </summary>
|
||||
public long ShippingId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发货省份
|
||||
/// </summary>
|
||||
public long ProvinceId { get; set; }
|
||||
/// <summary>
|
||||
/// 发货城市
|
||||
/// </summary>
|
||||
|
||||
public long CityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 市场价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal MarketPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 成本价单价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal? ProductCost { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分摊优惠金额单价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal DiscountAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家利润
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(8,4)")]
|
||||
public decimal StoreProfit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 售后状态
|
||||
/// </summary>
|
||||
public int AfterSalesStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 售后退款金额
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal RefundAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否已晒单
|
||||
/// </summary>
|
||||
public bool Reviewed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品留言
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string? Message { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
}
|
||||
}
|
||||
54
Atomx.Common/Entities/OrderLog.cs
Normal file
54
Atomx.Common/Entities/OrderLog.cs
Normal file
@@ -0,0 +1,54 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
[Table("OrderLogs")]
|
||||
public class OrderLog
|
||||
{
|
||||
/// <summary>
|
||||
/// 日志数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单ID
|
||||
/// </summary>
|
||||
public long OrderId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产生动作的用户ID
|
||||
/// </summary>
|
||||
public long? Operator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 日志类型
|
||||
/// </summary>
|
||||
public int? Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单状态
|
||||
/// </summary>
|
||||
public int OrderStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(300)")]
|
||||
public string Remark { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 操作IP
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Ip { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
}
|
||||
}
|
||||
78
Atomx.Common/Entities/PaymentChannel.cs
Normal file
78
Atomx.Common/Entities/PaymentChannel.cs
Normal file
@@ -0,0 +1,78 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
public class PaymentChannel
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 付款方式,银行、微信、支付宝,USDT
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支付网络,区块链-TRC20,Online-Wechat,Bank-ICBC
|
||||
/// </summary>
|
||||
public int Network { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支付渠道名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 支付渠道标题名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string Title { get; set; }=string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 描述说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(512)")]
|
||||
public string Description { get; set; } = string.Empty;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 收款账号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Account { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 支付通道的设置
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Config { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
34
Atomx.Common/Entities/Permission.cs
Normal file
34
Atomx.Common/Entities/Permission.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
[Table("Permissions")]
|
||||
public class Permission
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限名称 例如: "User.Read"
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 权限点说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Description { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 权限分类
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string Category { get; set; } = string.Empty; // 权限分类
|
||||
}
|
||||
}
|
||||
60
Atomx.Common/Entities/Picture.cs
Normal file
60
Atomx.Common/Entities/Picture.cs
Normal file
@@ -0,0 +1,60 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 图片
|
||||
/// </summary>
|
||||
[Table("Pictures")]
|
||||
public class Picture
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片类别
|
||||
/// </summary>
|
||||
public int Type { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 上传文件名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件大小
|
||||
/// </summary>
|
||||
public int FileSize { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 文件存放位置
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(250)")]
|
||||
public string Path { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件访问域名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(250)")]
|
||||
public string Domain { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件hash
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string SHA256Hash { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
}
|
||||
}
|
||||
12
Atomx.Common/Entities/Post.cs
Normal file
12
Atomx.Common/Entities/Post.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
public class Post
|
||||
{
|
||||
}
|
||||
}
|
||||
72
Atomx.Common/Entities/PriceTrend.cs
Normal file
72
Atomx.Common/Entities/PriceTrend.cs
Normal file
@@ -0,0 +1,72 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 价格走势
|
||||
/// </summary>
|
||||
[Table("PriceTrends")]
|
||||
public class PriceTrend
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 日期
|
||||
/// </summary>
|
||||
public int Date { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前价格
|
||||
/// </summary>
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最低价格
|
||||
/// </summary>
|
||||
public decimal LowestPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最高价格
|
||||
/// </summary>
|
||||
public decimal HighestPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前零售价格
|
||||
/// </summary>
|
||||
public decimal RetailPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最低零售价格
|
||||
/// </summary>
|
||||
public decimal LowestRetailPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最高零售价格
|
||||
/// </summary>
|
||||
public decimal HighestRetailPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
201
Atomx.Common/Entities/Product.cs
Normal file
201
Atomx.Common/Entities/Product.cs
Normal file
@@ -0,0 +1,201 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Table("Products")]
|
||||
public class Product
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发布的企业用户ID
|
||||
/// </summary>
|
||||
|
||||
public long CorporationStaffId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家店铺ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品类型ID
|
||||
/// </summary>
|
||||
public long ProductTypeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类路径
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(200)")]
|
||||
public string? CategoryPath { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
public long CategoryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 制造商ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品唯一编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string? SIN { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 封面图片
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string? Image { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品图片,JSON
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string? Photos { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品卖点
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string? Feature { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品简介
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string? Description { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 规格信息Json
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string? SpecificationJson { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 重量
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(6,2)")]
|
||||
public decimal? Weight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最小重量(有SKU的时候生效)
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(6,2)")]
|
||||
public decimal? MinWeight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最大重量(有SKU的时候生效)
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(6,2)")]
|
||||
public decimal? MaxWeight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 市场价,划线价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal MarketPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售标价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU组合的产品价格信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string? SkuPrices { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 商品扩展信息
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Extended { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品信息审核状态
|
||||
/// </summary>
|
||||
public int ReviewStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库存管理模式,0不跟踪库存,1以产品跟踪库存,2以SKU跟踪库存
|
||||
/// </summary>
|
||||
public int InventoryMethod { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品库存
|
||||
/// </summary>
|
||||
public int StockQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总销售数量
|
||||
/// </summary>
|
||||
public int SalesQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片数量
|
||||
/// </summary>
|
||||
public int PictureCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品状态,0未上架,1上架
|
||||
/// </summary>
|
||||
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否逻辑删除
|
||||
/// </summary>
|
||||
public bool Deleted { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 删除时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime? DeletedTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
84
Atomx.Common/Entities/ProductAttribute.cs
Normal file
84
Atomx.Common/Entities/ProductAttribute.cs
Normal file
@@ -0,0 +1,84 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 商品属性
|
||||
/// </summary>
|
||||
[Table("ProductAttributes")]
|
||||
public class ProductAttribute
|
||||
{
|
||||
/// <summary>
|
||||
/// 属性ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
public long CategoryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级属性,用于规格属性做分组
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 必须填写重量
|
||||
/// </summary>
|
||||
public bool WeightIsRequired { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 重量单位,1毫克mg,2克g,3千克kg,4吨t,5磅lb,6盎司oz
|
||||
/// </summary>
|
||||
public int WeightUnit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性控件类型,1选项,0文本
|
||||
/// </summary>
|
||||
public int ControlType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用属性的产品数量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否是必须的属性
|
||||
/// </summary>
|
||||
public bool IsRequired { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
127
Atomx.Common/Entities/ProductAttributeCombination.cs
Normal file
127
Atomx.Common/Entities/ProductAttributeCombination.cs
Normal file
@@ -0,0 +1,127 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性组合商品数据
|
||||
/// </summary>
|
||||
[Table("ProductAttributeCombinations")]
|
||||
public class ProductAttributeCombination
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应制造商ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性JSON
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string AttributesJson { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 库存数量
|
||||
/// </summary>
|
||||
public int StockQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售数量
|
||||
/// </summary>
|
||||
public int SalesQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(20)")]
|
||||
public string SkuNumber { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 重量
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Weight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 重量单位,1克,2千克,3磅,4盎司
|
||||
/// </summary>
|
||||
public int WeightUnit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售加工费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal ProcessCharge { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加工费成本
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal ProcessCost { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 销售附加费
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Surcharge { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 附加费成本
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal SurchargeCost { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU的市场价,划线价
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
|
||||
public decimal MarketPrice { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SKU的销售价格
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 标记
|
||||
/// </summary>
|
||||
public int Mark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否禁用停售
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
64
Atomx.Common/Entities/ProductAttributeOption.cs
Normal file
64
Atomx.Common/Entities/ProductAttributeOption.cs
Normal file
@@ -0,0 +1,64 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性选项
|
||||
/// </summary>
|
||||
[Table("ProductAttributeOptions")]
|
||||
public class ProductAttributeOption
|
||||
{
|
||||
/// <summary>
|
||||
/// 预设值ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性ID
|
||||
/// </summary>
|
||||
public long AttributeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预设值名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Value { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 属性值使用量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否通用的
|
||||
/// </summary>
|
||||
public bool Standard { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
39
Atomx.Common/Entities/ProductAttributeRelation.cs
Normal file
39
Atomx.Common/Entities/ProductAttributeRelation.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性关系表
|
||||
/// </summary>
|
||||
[Table("ProductAttributeRelations")]
|
||||
public class ProductAttributeRelation
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性关联数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性ID
|
||||
/// </summary>
|
||||
public long AttributeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性
|
||||
/// </summary>
|
||||
public bool Image { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
}
|
||||
}
|
||||
67
Atomx.Common/Entities/ProductAttributeValue.cs
Normal file
67
Atomx.Common/Entities/ProductAttributeValue.cs
Normal file
@@ -0,0 +1,67 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品属性值表
|
||||
/// </summary>
|
||||
[Table("ProductAttributeValues")]
|
||||
public class ProductAttributeValue
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预设值ID
|
||||
/// </summary>
|
||||
public long OptionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性关系数据ID
|
||||
/// </summary>
|
||||
public long ProductAttributeRelationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性值名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 属性图片
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Image { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 重量
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Weight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 重量单位,1克,2千克,3磅,4盎司
|
||||
/// </summary>
|
||||
public int WeightUnit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否是加重的
|
||||
/// </summary>
|
||||
public bool IsAddWeight { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
}
|
||||
}
|
||||
66
Atomx.Common/Entities/ProductChangeLog.cs
Normal file
66
Atomx.Common/Entities/ProductChangeLog.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品变更日志
|
||||
/// </summary>
|
||||
[Table("ProductChangeLogs")]
|
||||
public class ProductChangeLog
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 变更类型,新增,编辑,删除,恢复
|
||||
/// </summary>
|
||||
public int ChangeType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作用户ID
|
||||
/// </summary>
|
||||
public long? Operator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作账号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Username { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 日志操作方
|
||||
/// </summary>
|
||||
public int OperatorParty { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作摘要
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(256)")]
|
||||
public string Summary { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 操作内容
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Details { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
}
|
||||
}
|
||||
56
Atomx.Common/Entities/ProductInventory.cs
Normal file
56
Atomx.Common/Entities/ProductInventory.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品仓库库存表
|
||||
/// </summary>
|
||||
[Table("ProductInventories")]
|
||||
public class ProductInventory
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性组合ID
|
||||
/// </summary>
|
||||
public long ProductAttributeCombinationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仓库ID
|
||||
/// </summary>
|
||||
public long WarehouseId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库存数量
|
||||
/// </summary>
|
||||
public int StockQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
97
Atomx.Common/Entities/ProductInventoryLog.cs
Normal file
97
Atomx.Common/Entities/ProductInventoryLog.cs
Normal file
@@ -0,0 +1,97 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品库存记录
|
||||
/// </summary>
|
||||
[Table("ProductInventoryLogs")]
|
||||
public class ProductInventoryLog
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产生动作的用户ID
|
||||
/// </summary>
|
||||
public long? Operator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型,0入库,1出库,初始
|
||||
/// </summary>
|
||||
public int? Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属买家店铺或货仓
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 供应制造商ID
|
||||
/// </summary>
|
||||
public long ManufacturerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仓库ID
|
||||
/// </summary>
|
||||
public long WarehouseId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性组合ID
|
||||
/// </summary>
|
||||
public long ProductAttributeCombinationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单ID
|
||||
/// </summary>
|
||||
public long OrderId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作数量
|
||||
/// </summary>
|
||||
public int ChangeAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 重量
|
||||
/// </summary>
|
||||
[Column(TypeName = "decimal(18,4)")]
|
||||
public decimal Weight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作之前库存
|
||||
/// </summary>
|
||||
public int BeforeStock { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 操作之后库存
|
||||
/// </summary>
|
||||
public int AfterStock { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
}
|
||||
}
|
||||
224
Atomx.Common/Entities/ProductListing.cs
Normal file
224
Atomx.Common/Entities/ProductListing.cs
Normal file
@@ -0,0 +1,224 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 自有商城或平台网点的商品列表。
|
||||
/// </summary>
|
||||
[Table("ProductListings")]
|
||||
public class ProductListing
|
||||
{
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 基础产品信息
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发布的企业用户ID
|
||||
/// </summary>
|
||||
|
||||
public long CorporationStaffId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 平台ID,1自有商城,2淘宝,3天猫,4京东,5拼多多,6抖音,7快手,8小红书等
|
||||
/// </summary>
|
||||
public int PlatformId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 卖家店铺ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品类型ID
|
||||
/// </summary>
|
||||
public long ProductTypeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SEO Title
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string MetaTitle { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// SEO Description
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(512)")]
|
||||
public string MetaDescription { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品Slug
|
||||
/// </summary>
|
||||
public string Slug { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品特点标签
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(100)")]
|
||||
public string? Tags { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 产品详细介绍
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Body { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 订单最小数量
|
||||
/// </summary>
|
||||
public int OrderMinimumQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单最多数量
|
||||
/// </summary>
|
||||
public int OrderMaximumQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许退货
|
||||
/// </summary>
|
||||
public bool AllowReturn { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许换货
|
||||
/// </summary>
|
||||
|
||||
public bool AllowExchange { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否独立发货
|
||||
/// </summary>
|
||||
|
||||
public bool SingleShip { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预计运输天数
|
||||
/// </summary>
|
||||
public int ShippingDays { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 运费模板ID
|
||||
/// </summary>
|
||||
|
||||
public long ShippingId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 精选
|
||||
/// </summary>
|
||||
public bool IsFeatured { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否 best
|
||||
/// </summary>
|
||||
public bool IsBest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否标注新品
|
||||
/// </summary>
|
||||
public bool IsNew { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 暂停销售,前台处理成已售罄
|
||||
/// </summary>
|
||||
public bool StopSales { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品信息审核状态
|
||||
/// </summary>
|
||||
public int ReviewStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 商品库存
|
||||
/// </summary>
|
||||
public int StockQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总销售数量
|
||||
/// </summary>
|
||||
public int SalesQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 评分
|
||||
/// </summary>
|
||||
public double Ratings { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 5颗星
|
||||
/// </summary>
|
||||
public int FiveStars { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 4课星
|
||||
/// </summary>
|
||||
public int FourStars { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 三颗星
|
||||
/// </summary>
|
||||
public int ThreeStars { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 两颗星
|
||||
/// </summary>
|
||||
public int TwoStars { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 一颗星
|
||||
/// </summary>
|
||||
public int OneStars { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 评论数量
|
||||
/// </summary>
|
||||
public int ReviewsCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总浏览次数
|
||||
/// </summary>
|
||||
public int ViewsCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品状态,0未上架,1上架
|
||||
/// </summary>
|
||||
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否逻辑删除
|
||||
/// </summary>
|
||||
public bool Deleted { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 删除时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime? DeletedTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
42
Atomx.Common/Entities/ProductPicture.cs
Normal file
42
Atomx.Common/Entities/ProductPicture.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
[Table("ProductPictures")]
|
||||
public class ProductPicture
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片类型,封面,SKU
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性组合ID
|
||||
/// </summary>
|
||||
public long ProductAttributeCombination { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片ID
|
||||
/// </summary>
|
||||
public long FileId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 显示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
}
|
||||
}
|
||||
68
Atomx.Common/Entities/Role.cs
Normal file
68
Atomx.Common/Entities/Role.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 角色
|
||||
/// </summary>
|
||||
[Table("Roles")]
|
||||
public class Role
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色名称
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Description { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 权限
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Permission { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否系统角色
|
||||
/// </summary>
|
||||
public bool IsSystemRole { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色用户数量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
47
Atomx.Common/Entities/Setting.cs
Normal file
47
Atomx.Common/Entities/Setting.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 系统设置配置
|
||||
/// </summary>
|
||||
[Table("Settings")]
|
||||
public class Setting
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属的网站应用Id
|
||||
/// </summary>
|
||||
public long SiteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 系统设置KEY
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Key { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 配置类型,0 系统设置,
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 标题名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 系统设置项
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Content { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
47
Atomx.Common/Entities/SiteApp.cs
Normal file
47
Atomx.Common/Entities/SiteApp.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 站点应用
|
||||
/// </summary>
|
||||
public class SiteApp
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 网站应用类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 网站应用名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 建立时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
69
Atomx.Common/Entities/SpecificationAttribute.cs
Normal file
69
Atomx.Common/Entities/SpecificationAttribute.cs
Normal file
@@ -0,0 +1,69 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 规格属性
|
||||
/// </summary>
|
||||
[Table("SpecificationAttributes")]
|
||||
public class SpecificationAttribute
|
||||
{
|
||||
/// <summary>
|
||||
/// 属性ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类ID
|
||||
/// </summary>
|
||||
public long CategoryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级属性,用于规格属性做分组
|
||||
/// </summary>
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 属性名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 属性控件类型,1选项,2文本
|
||||
/// </summary>
|
||||
public int ControlType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用属性的产品数量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
59
Atomx.Common/Entities/SpecificationAttributeOption.cs
Normal file
59
Atomx.Common/Entities/SpecificationAttributeOption.cs
Normal file
@@ -0,0 +1,59 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 规格属性选项
|
||||
/// </summary>
|
||||
[Table("SpecificationAttributeOptions")]
|
||||
public class SpecificationAttributeOption
|
||||
{
|
||||
/// <summary>
|
||||
/// 预设值ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品属性ID
|
||||
/// </summary>
|
||||
public long SpecificationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预设值名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(50)")]
|
||||
public string Value { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 属性值使用量
|
||||
/// </summary>
|
||||
public int Count { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 展示排序
|
||||
/// </summary>
|
||||
public int DisplayOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
59
Atomx.Common/Entities/Store.cs
Normal file
59
Atomx.Common/Entities/Store.cs
Normal file
@@ -0,0 +1,59 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 店铺
|
||||
/// </summary>
|
||||
[Table("Stores")]
|
||||
public class Store
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上级ID,用于团队内部分组
|
||||
/// </summary>
|
||||
public int ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 店铺类型,网店,实体店,档口,直播间
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public required string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据删除时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? DeleteTime { get; set; }
|
||||
}
|
||||
}
|
||||
47
Atomx.Common/Entities/StoreProductItem.cs
Normal file
47
Atomx.Common/Entities/StoreProductItem.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 店铺产品清单
|
||||
/// </summary>
|
||||
[Table("StoreProductItems")]
|
||||
public class StoreProductItem
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 店铺
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产品ID
|
||||
/// </summary>
|
||||
public long ProductId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库存数量
|
||||
/// </summary>
|
||||
public int StockQuantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
84
Atomx.Common/Entities/UploadFile.cs
Normal file
84
Atomx.Common/Entities/UploadFile.cs
Normal file
@@ -0,0 +1,84 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 上传的文件
|
||||
/// </summary>
|
||||
[Table("UploadFiles")]
|
||||
public class UploadFile
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属站点应用ID
|
||||
/// </summary>
|
||||
public long SiteId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 文件类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 文件名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 存放路径
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string Path { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件扩展
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(12)")]
|
||||
public string Extension { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件扩展
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(32)")]
|
||||
public string ContentType { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件hash
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(128)")]
|
||||
public string SHA256Hash { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 文件大小,单位:字节
|
||||
/// </summary>
|
||||
public int Size { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建用户ID
|
||||
/// </summary>
|
||||
public long CreateUid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建用户名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(32)")]
|
||||
public string CreateBy { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
58
Atomx.Common/Entities/User.cs
Normal file
58
Atomx.Common/Entities/User.cs
Normal file
@@ -0,0 +1,58 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户数据
|
||||
/// </summary>
|
||||
[Table("Users")]
|
||||
public class User
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮箱
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 手机号
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Mobile { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 头像
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(64)")]
|
||||
public string Avatar { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 登录密码
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(32)")]
|
||||
public string Password { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 注册数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
51
Atomx.Common/Entities/UserAsset.cs
Normal file
51
Atomx.Common/Entities/UserAsset.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户资产数据表
|
||||
/// </summary>
|
||||
public class UserAsset
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 资产名称ID
|
||||
/// </summary>
|
||||
public long CurrencyId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总额
|
||||
/// </summary>
|
||||
public decimal Amount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 余额
|
||||
/// </summary>
|
||||
public decimal Balance { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 冻结数量
|
||||
/// </summary>
|
||||
public decimal FrozenAmount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
45
Atomx.Common/Entities/UserMeta.cs
Normal file
45
Atomx.Common/Entities/UserMeta.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户资料
|
||||
/// </summary>
|
||||
[Table("UserMetas")]
|
||||
public class UserMeta
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 字段KEY
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string MetaKey { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 存储值
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string MetaValue { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据最后更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
43
Atomx.Common/Entities/UserStoreRelation.cs
Normal file
43
Atomx.Common/Entities/UserStoreRelation.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户店铺关系
|
||||
/// </summary>
|
||||
[Table("UserStoreRelations")]
|
||||
public class UserStoreRelation
|
||||
{
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 店铺ID
|
||||
/// </summary>
|
||||
public long StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据状态
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 数据更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
47
Atomx.Common/Entities/Warehouse.cs
Normal file
47
Atomx.Common/Entities/Warehouse.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 仓库数据
|
||||
/// </summary>
|
||||
[Table("Warehouses")]
|
||||
public class Warehouse
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 归属公司ID
|
||||
/// </summary>
|
||||
public long CorporationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分类名称
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(25)")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否可用
|
||||
/// </summary>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
41
Atomx.Common/Entities/WarehouseStockRecord.cs
Normal file
41
Atomx.Common/Entities/WarehouseStockRecord.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Atomx.Common.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 出入库记录
|
||||
/// </summary>
|
||||
[Table("WarehouseStockRecords")]
|
||||
public class WarehouseStockRecord
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据ID
|
||||
/// </summary>
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
[Key]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型,0入库,1出库,初始
|
||||
/// </summary>
|
||||
public int? Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 产生动作的用户ID
|
||||
/// </summary>
|
||||
public long? Operator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注说明
|
||||
/// </summary>
|
||||
[Column(TypeName = "varchar(255)")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 注册数据创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "timestamptz")]
|
||||
public DateTime CreateTime { get; set; } = DateTime.UtcNow;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user