添加项目文件。

This commit is contained in:
2025-12-02 13:10:10 +08:00
parent 93a2382a16
commit 289aa4cbe7
400 changed files with 91177 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
namespace Atomx.Admin.Client.Models
{
public class AddressModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 添加地址用户
/// </summary>
public long UserId { get; set; }
/// <summary>
/// 收件人姓名
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 邮件地址
/// </summary>
public string Email { get; set; } = string.Empty;
/// <summary>
/// 电话号码
/// </summary>
public string Phone { get; set; } = string.Empty;
/// <summary>
/// 公司
/// </summary>
public string Company { get; set; } = string.Empty;
/// <summary>
/// 国家
/// </summary>
public long Country { get; set; }
/// <summary>
/// 省份
/// </summary>
public long Province { get; set; }
/// <summary>
/// 城市
/// </summary>
public long City { get; set; }
/// <summary>
/// 地区
/// </summary>
public long Region { get; set; }
/// <summary>
/// 邮政编码
/// </summary>
public string PostalCode { get; set; } = string.Empty;
/// <summary>
/// 详细地址
/// </summary>
public string FullAddress { get; set; } = string.Empty;
/// <summary>
/// 地址所在经度
/// </summary>
public decimal Longitude { get; set; }
/// <summary>
/// 地址所在纬度
/// </summary>
public decimal Latitude { get; set; }
/// <summary>
/// 是否是虚拟地址
/// </summary>
public bool IsVirtual { get; set; }
/// <summary>
/// 是否编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,50 @@
namespace Atomx.Admin.Client.Models
{
public class AdminModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 管理员用户名
/// </summary>
public string Username { get; set; } = string.Empty;
/// <summary>
/// 注册手机号
/// </summary>
public string Mobile { get; set; } = string.Empty;
/// <summary>
/// 注册邮箱
/// </summary>
public string Email { get; set; } = string.Empty;
/// <summary>
/// 登录密码
/// </summary>
public string Password { get; set; } = string.Empty;
/// <summary>
/// 新密码
/// </summary>
public string NewPassword { get; set; } = string.Empty;
/// <summary>
/// 确认密码
/// </summary>
public string RePassword { get; set; } = string.Empty;
/// <summary>
/// 是否设置密码
/// </summary>
public bool SetPassword { get; set; }
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,35 @@
namespace Atomx.Admin.Client.Models
{
public class AdminSearch : BaseSearch
{
/// <summary>
/// 用户名或昵称
/// </summary>
public string? Username { get; set; }
/// <summary>
/// 邮件地址
/// </summary>
public string? Email { get; set; }
/// <summary>
/// 手机号码
/// </summary>
public string? Mobile { get; set; }
/// <summary>
/// 真实姓名
/// </summary>
public string? RealName { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
/// <summary>
/// 状态
/// </summary>
public string? Status { get; set; }
}
}

View File

@@ -0,0 +1,78 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
namespace Atomx.Admin.Client.Models
{
public class AppVersionModel
{
/// <summary>
/// 数据ID
/// </summary>
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Key]
public long Id { 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; }
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class AppVersionSearch : BaseSearch
{
/// <summary>
/// 名称
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 状态
/// </summary>
public string Status { get; set; } = string.Empty;
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
}
}

View File

@@ -0,0 +1,15 @@
namespace Atomx.Admin.Client.Models
{
public class BaseSearch
{
/// <summary>
/// 查询开始时间
/// </summary>
public DateTime? StartTime { get; set; }
/// <summary>
/// 查询结束时间
/// </summary>
public DateTime? EndTime { get; set; }
}
}

View File

@@ -0,0 +1,11 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class CategoryItem : Category
{
public List<CategoryItem> Children { get; set; } = new List<CategoryItem>();
public bool IsLast { get; set; }
}
}

View File

@@ -0,0 +1,83 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
namespace Atomx.Admin.Client.Models
{
public class CategoryModel
{
/// <summary>
/// 分类ID
/// </summary>
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Key]
public long Id { 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 DisplayOrder { get; set; }
}
}

View File

@@ -0,0 +1,10 @@
namespace Atomx.Admin.Client.Models
{
public class CategorySearch : BaseSearch
{
/// <summary>
/// 分类名称
/// </summary>
public string? Name { get; set; }
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class CorporationModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 公司名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class CorporationSearch : BaseSearch
{
/// <summary>
/// 名称
/// </summary>
public string? Name { get; set; }
}
}

View File

@@ -0,0 +1,55 @@
namespace Atomx.Admin.Client.Models
{
public class CorporationStaffModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 管理员用户名
/// </summary>
public string Username { get; set; } = string.Empty;
/// <summary>
/// 注册手机号
/// </summary>
public string Mobile { get; set; } = string.Empty;
/// <summary>
/// 注册邮箱
/// </summary>
public string Email { get; set; } = string.Empty;
/// <summary>
/// 登录密码
/// </summary>
public string Password { get; set; } = string.Empty;
/// <summary>
/// 新密码
/// </summary>
public string NewPassword { get; set; } = string.Empty;
/// <summary>
/// 确认密码
/// </summary>
public string RePassword { get; set; } = string.Empty;
/// <summary>
/// 是否设置密码
/// </summary>
public bool SetPassword { get; set; }
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,40 @@
namespace Atomx.Admin.Client.Models
{
public class CorporationStaffSearch : BaseSearch
{
/// <summary>
/// 公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 用户名或昵称
/// </summary>
public string? Username { get; set; }
/// <summary>
/// 邮件地址
/// </summary>
public string? Email { get; set; }
/// <summary>
/// 手机号码
/// </summary>
public string? Mobile { get; set; }
/// <summary>
/// 真实姓名
/// </summary>
public string? RealName { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
/// <summary>
/// 状态
/// </summary>
public string? Status { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class CorporationUserModel:User
{
/// <summary>
/// 公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 用户ID
/// </summary>
public long UserId { get; set; }
/// <summary>
/// 是否是管理员
/// </summary>
public bool IsAdmin { get; set; }
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,7 @@
namespace Atomx.Admin.Client.Models
{
public class CorporationUserSearch : BaseSearch
{
public string Name { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,56 @@
namespace Atomx.Admin.Client.Models
{
public class CurrencyModel
{
/// <summary>
/// 数据ID
/// </summary>
public int Id { get; set; }
/// <summary>
/// 语言
/// </summary>
public string Language { get; set; } = string.Empty;
/// <summary>
/// 货币名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 货币单位代码
/// </summary>
public string CurrencyCode { get; set; } = string.Empty;
/// <summary>
/// 本地显示
/// </summary>
public string DisplayLocale { get; set; } = string.Empty;
/// <summary>
/// 数字自定义格式化
/// </summary>
public string CustomFormatting { get; set; } = string.Empty;
/// <summary>
/// 兑换汇率
/// </summary>
public double Rate { get; set; }
/// <summary>
/// 排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
/// <summary>
/// 是否编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace Atomx.Admin.Client.Models
{
public class CurrentUser
{
public string Name { get; set; } = string.Empty;
public string Avatar { get; set; } = string.Empty;
public string UserId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,55 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Atomx.Admin.Client.Models
{
public class LanguageModel
{
/// <summary>
/// 数据ID
/// </summary>
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int Id { get; set; }
/// <summary>
/// 语言名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 语言标题
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 语言名称
/// </summary>
public string Culture { get; set; } = string.Empty;
/// <summary>
/// 国旗
/// </summary>
public string FlagImage { get; set; } = string.Empty;
/// <summary>
/// 排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 是否可用,系统面
/// </summary>
public bool Enabled { get; set; }
/// <summary>
/// 多语言资源的版本,可以是时间戳或哈希
/// </summary>
public string ResourceVersion { get; set; } = string.Empty;
/// <summary>
/// 是否编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace Atomx.Admin.Client.Models
{
public class LanguageSearch : BaseSearch
{
/// <summary>
/// 语言名称
/// </summary>
public string Name { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,35 @@
namespace Atomx.Common.Models
{
public class LinkItem
{
/// <summary>
/// 链接标识
/// </summary>
public string Key { get; set; } = string.Empty;
/// <summary>
/// 链接名字
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 标题
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 图标
/// </summary>
public string Image { get; set; } = string.Empty;
/// <summary>
/// 链接URL
/// </summary>
public string Url { get; set; } = string.Empty;
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
}
}

View File

@@ -0,0 +1,35 @@
namespace Atomx.Admin.Client.Models
{
public class LocaleResourceModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 语言编码
/// </summary>
public int LanguageId { get; set; }
/// <summary>
/// 语言名称
/// </summary>
public string Culture { get; set; } = string.Empty;
/// <summary>
/// 资源名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 资源内容值
/// </summary>
public string Value { get; set; } = string.Empty;
/// <summary>
/// 是否编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,25 @@
namespace Atomx.Admin.Client.Models
{
public class LoginModel
{
/// <summary>
/// 登录账号
/// </summary>
public string Account { get; set; } = string.Empty;
/// <summary>
/// 登录密码
/// </summary>
public string Password { get; set; } = string.Empty;
/// <summary>
/// 地区代码,同时用来识别是否手机登录
/// </summary>
public string AreaCode { get; set; } = string.Empty;
/// <summary>
/// 是否记住我
/// </summary>
public bool SaveMe { get; set; }
}
}

View File

@@ -0,0 +1,58 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
namespace Atomx.Admin.Client.Models
{
public class ManufacturerModel
{
/// <summary>
/// 制造商ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 制造商名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 是否是供应商
/// </summary>
public bool IsVendor { get; set; }
/// <summary>
/// 品牌LOGO
/// </summary>
public string Logo { get; set; } = string.Empty;
/// <summary>
/// 品牌制造商描述
/// </summary>
public string Description { get; set; } = string.Empty;
/// <summary>
/// Meta标题
/// </summary>
public string MetaTitle { get; set; } = string.Empty;
/// <summary>
/// Meta标题
/// </summary>
public string MetaKeywords { get; set; } = string.Empty;
/// <summary>
/// Meta标题
/// </summary>
public string MetaDescription { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public bool Enabled { get; set; }
/// <summary>
/// 显示排序
/// </summary>
public int DisplayOrder { get; set; }
}
}

View File

@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class ManufacturerProductItemSearch : BaseSearch
{
}
}

View File

@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class ManufacturerSearch:BaseSearch
{
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }=string.Empty;
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class MaterialSearch : BaseSearch
{
/// <summary>
/// 类型
/// </summary>
public int? Type { get; set; }
/// <summary>
/// 原料归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long StoreId { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class MenuItem : Menu
{
public List<MenuItem>? Children { get; set; }
}
}

View File

@@ -0,0 +1,70 @@
namespace Atomx.Admin.Client.Models
{
public class MenuModel
{
/// <summary>
/// 分类ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 分类类型,1-管理后台系统
/// </summary>
public int Type { get; set; }
/// <summary>
/// 上级分类ID
/// </summary>
public long ParentId { get; set; }
/// <summary>
/// 分类名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 分类图片
/// </summary>
public string Icon { get; set; } = string.Empty;
/// <summary>
/// 菜单分组,针对折叠菜单效果
/// </summary>
public string Key { get; set; } = string.Empty;
/// <summary>
/// 菜单链接的URL
/// </summary>
public string Url { get; set; } = string.Empty;
/// <summary>
/// 权限代码
/// </summary>
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>
public string Path { get; set; } = string.Empty;
/// <summary>
/// 排序
/// </summary>
public int DisplayOrder { get; set; }
}
}

View File

@@ -0,0 +1,10 @@
namespace Atomx.Admin.Client.Models
{
public class MenuSearch
{
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,19 @@
namespace Atomx.Admin.Client.Models
{
public class MenuTreeItem
{
public string Icon { get; set; } = string.Empty;
public string IconFont { get; set; } = string.Empty;
public string Locale { get; set; } = string.Empty;
public string Name { get; set; } = string.Empty;
public string Key { get; set; } = string.Empty;
public string Path { get; set; } = string.Empty;
public List<MenuTreeItem> Children { get; set; } = new List<MenuTreeItem>();
}
}

View File

@@ -0,0 +1,40 @@
namespace Atomx.Admin.Client.Models
{
public class MessageTemplateModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 消息模板类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary>
/// 信息模板KEY
/// </summary>
public string Key { get; set; } = string.Empty;
/// <summary>
/// 消息模板名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 消息标题
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 消息内容
/// </summary>
public string Body { get; set; } = string.Empty;
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace Atomx.Admin.Client.Models
{
public class MessageTemplateSearch : BaseSearch
{
public int? Type { get; set; }
public string Key { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class OrderSearch : BaseSearch
{
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class PriceTrendSearch : BaseSearch
{
}
}

View File

@@ -0,0 +1,50 @@
namespace Atomx.Admin.Client.Models
{
public class ProductAddStockModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 产品ID
/// </summary>
public long ProductId { get; set; }
/// <summary>
/// 产品标题
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 产品属性
/// </summary>
public List<ProductStockAttributeModel> ProductStockAttributes { get; set; } = new();
/// <summary>
/// SKU信息
/// </summary>
public ProductAttributeCombinationModel ProductAttributeCombination { get; set; } = new();
/// <summary>
/// 归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 仓库ID
/// </summary>
public string WarehouseId { get; set; } = string.Empty;
/// <summary>
/// 是否新增属性
/// </summary>
public bool AddAttribute { get; set; }
/// <summary>
/// 添加库存
/// </summary>
public int AddStockQuantity { get; set; }
}
}

View File

@@ -0,0 +1,89 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品SKU属性组合模型
/// </summary>
public class ProductAttributeCombinationModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 产品ID
/// </summary>
public long ProductId { get; set; }
/// <summary>
/// 供应制造商ID
/// </summary>
public long ManufacturerId { get; set; }
/// <summary>
/// 属性JSON
/// </summary>
public List<ProductSkuModel> SkuAttributes { get; set; } = new List<ProductSkuModel>();
/// <summary>
/// 库存数量
/// </summary>
public int StockQuantity { get; set; }
/// <summary>
/// 销售数量
/// </summary>
public int SalesQuantity { get; set; }
/// <summary>
/// SKU编码
/// </summary>
public string SkuNumber { get; set; } = string.Empty;
/// <summary>
/// 销售加工费
/// </summary>
public decimal ProcessCharge { get; set; }
/// <summary>
/// 加工费成本
/// </summary>
public decimal ProcessCost { get; set; }
/// <summary>
/// 销售附加费
/// </summary>
public decimal Surcharge { get; set; }
/// <summary>
/// 附加费成本
/// </summary>
public decimal SurchargeCost { get; set; }
/// <summary>
/// SKU的市场价划线价
/// </summary>
public decimal MarketPrice { get; set; }
/// <summary>
/// SKU的销售价格
/// </summary>
public decimal Price { get; set; }
/// <summary>
/// 重量
/// </summary>
public decimal Weight { get; set; }
/// <summary>
/// 重量单位1克2千克3磅4盎司
/// </summary>
public int WeightUnit { get; set; }
/// <summary>
/// 是否上架销售
/// </summary>
public bool Enabled { get; set; }
}
}

View File

@@ -0,0 +1,10 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class ProductAttributeItemModel : ProductAttribute
{
public string CategoryName { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,50 @@
namespace Atomx.Admin.Client.Models
{
public class ProductAttributeModel
{
/// <summary>
/// 属性ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 上级属性,用于规格属性做分组
/// </summary>
public long ParentId { get; set; }
/// <summary>
/// 分类ID
/// </summary>
public long CategoryId { get; set; }
/// <summary>
/// 属性名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 属性控件类型1选项0文本
/// </summary>
public int ControlType { get; set; }
/// <summary>
/// 必须填写重量
/// </summary>
public bool WeightIsRequired { get; set; }
/// <summary>
/// 是否是必须的属性
/// </summary>
public bool IsRequired { get; set; }
/// <summary>
/// 展示排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,40 @@
namespace Atomx.Admin.Client.Models
{
public class ProductAttributeOptionModel
{
/// <summary>
/// 预设值ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 供应商自定义值
/// </summary>
public long VendorId { get; set; }
/// <summary>
/// 产品属性ID
/// </summary>
public long AttributeId { get; set; }
/// <summary>
/// 预设值名称
/// </summary>
public string Value { get; set; } = string.Empty;
/// <summary>
/// 展示排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 是否通用的
/// </summary>
public bool Standard { get; set; }
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
namespace Atomx.Admin.Client.Models
{
public class ProductAttributeOptionSearch : BaseSearch
{
/// <summary>
/// 值
/// </summary>
public string? Value { get; set; }
public long AttributeId { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace Atomx.Admin.Client.Models
{
public class ProductAttributeSearch : BaseSearch
{
public string Name { get; set; }=string.Empty;
public long CategoryId { get; set; }
}
}

View File

@@ -0,0 +1,63 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品属性值模型
/// </summary>
public class ProductAttributeValueModel
{
/// <summary>
/// 数据ID
/// </summary>
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>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 属性图片
/// </summary>
public string Image { get; set; } = string.Empty;
/// <summary>
/// 重量
/// </summary>
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; }
/// <summary>
/// 是否在编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,6 @@
namespace Atomx.Admin.Client.Models
{
public class ProductDetailModel
{
}
}

View File

@@ -0,0 +1,241 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class ProductModel
{
/// <summary>
/// 产品ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 父产品ID
/// </summary>
public long ParentProductId { get; set; }
/// <summary>
/// 发布用户ID
/// </summary>
public long UserId { 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>
public string? CategoryPath { get; set; } = string.Empty;
/// <summary>
/// 分类ID
/// </summary>
public long CategoryId { get; set; }
/// <summary>
/// 制造商ID
/// </summary>
public long ManufacturerId { get; set; }
/// <summary>
/// SEO Title
/// </summary>
public string MetaTitle { get; set; } = string.Empty;
/// <summary>
/// SEO Description
/// </summary>
public string MetaDescription { get; set; } = string.Empty;
/// <summary>
/// 产品Slug
/// </summary>
public string Slug { get; set; } = string.Empty;
/// <summary>
/// 产品名称
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 产品唯一编码
/// </summary>
public string? SIN { get; set; } = string.Empty;
/// <summary>
/// 封面图片
/// </summary>
public string? Image { get; set; } = string.Empty;
/// <summary>
/// 产品图片JSON
/// </summary>
public string? Photos { get; set; } = string.Empty;
/// <summary>
/// 产品卖点
/// </summary>
public string? Feature { get; set; } = string.Empty;
/// <summary>
/// 产品简介
/// </summary>
public string? Description { get; set; } = string.Empty;
/// <summary>
/// 产品特点标签
/// </summary>
public string? Tags { get; set; } = string.Empty;
/// <summary>
/// 产品详细介绍
/// </summary>
public string Body { get; set; } = string.Empty;
/// <summary>
/// 规格信息Json
/// </summary>
public string? Specification { get; set; } = string.Empty;
/// <summary>
/// 商品库存
/// </summary>
public int StockQuantity { get; set; }
/// <summary>
/// 重量
/// </summary>
public decimal? Weight { get; set; }
/// <summary>
/// 市场价,划线价
/// </summary>
public decimal MarketPrice { get; set; }
/// <summary>
/// 销售标价
/// </summary>
public decimal Price { get; set; }
/// <summary>
/// SKU组合的产品价格信息
/// </summary>
public string? SkuPrices { get; set; } = string.Empty;
/// <summary>
/// 商品扩展信息
/// </summary>
public string Extended { 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 int DisplayOrder { get; set; }
/// <summary>
/// 暂停销售,前台处理成已售罄
/// </summary>
public bool StopSales { get; set; }
/// <summary>
/// 产品状态0未上架1上架
/// </summary>
public int Status { get; set; }
/// <summary>
/// 产品信息审核状态
/// </summary>
public int ReviewStatus { get; set; }
/// <summary>
/// 禁用优惠券
/// </summary>
public bool DisableCoupons { get; set; }
/// <summary>
/// 产品属性
/// </summary>
public List<ProductSaleAttributeModel> ProductSaleAttributes { get; set; } = new();
/// <summary>
/// 产品属性组合信息
/// </summary>
public List<ProductAttributeCombinationModel> ProductAttributeCombinations { get; set; } = new();
/// <summary>
/// 用来设置SKU属性图片的数据源
/// </summary>
public List<ProductAttribute> PhotoSalesAttribute { get; set; } = new();
/// <summary>
/// 是否编辑
/// </summary>
public bool IsEdit { get; set; } = false;
}
}

View File

@@ -0,0 +1,23 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// SKU价格
/// </summary>
public class ProductSKUPricesModel
{
/// <summary>
/// SKU组合ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 市场价
/// </summary>
public decimal? MarketPrice { get; set; }
/// <summary>
/// 销售价
/// </summary>
public decimal? Price { get; set; }
}
}

View File

@@ -0,0 +1,68 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品销售属性模型
/// </summary>
public class ProductSaleAttributeModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 属性ID
/// </summary>
public long AttributeId { get; set; }
/// <summary>
/// 控件的类型
/// </summary>
public int ControlType { get; set; }
/// <summary>
/// 必须填重量
/// </summary>
public bool WeightIsRequired { get; set; }
/// <summary>
/// 属性名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 是否拥有规格图片
/// </summary>
public bool Image { get; set; }
/// <summary>
/// 属性排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 产品属性值
/// </summary>
public List<ProductAttributeValueModel> ProductAttributeValues { get; set; } = new List<ProductAttributeValueModel>();
/// <summary>
///
/// </summary>
public string SelectOption { get; set; } = string.Empty;
/// <summary>
/// 输入的新属性值
/// </summary>
public string InputText { get; set; } = string.Empty;
/// <summary>
/// 是否编辑状态
/// </summary>
public bool AddAttribute { get; set; }
/// <summary>
/// 是否是必须的属性
/// </summary>
public bool IsRequired { get; set; }
}
}

View File

@@ -0,0 +1,6 @@
namespace Atomx.Admin.Client.Models
{
public class ProductSaleSpecificationAttributeModel
{
}
}

View File

@@ -0,0 +1,25 @@
namespace Atomx.Admin.Client.Models
{
public class ProductSearch : BaseSearch
{
/// <summary>
/// 产品标题
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 分类ID
/// </summary>
public string CategoryId { get; set; } = string.Empty;
/// <summary>
/// 产品状态
/// </summary>
public string Status { get; set; } = string.Empty;
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
}
}

View File

@@ -0,0 +1,77 @@
using Atomx.Utils.Extension;
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品SKU信息模型
/// </summary>
public class ProductSkuModel : IEquatable<ProductSkuModel>
{
/// <summary>
/// 属性ID
/// </summary>
public long AttributeId { get; set; }
/// <summary>
/// 属性名称
/// </summary>
public string AttributeName { get; set; } = string.Empty;
/// <summary>
/// 属性值ID
/// </summary>
public long ValueId { get; set; }
/// <summary>
/// 属性值 Name
/// </summary>
public string ValueName { get; set; } = string.Empty;
/// <summary>
/// 重量
/// </summary>
public decimal Weight { get; set; }
/// <summary>
/// 重量单位,1毫克mg2克g,3千克kg,4吨t5磅lb6盎司oz
/// </summary>
public int WeightUnit { get; set; }
public bool Equals(ProductSkuModel? other)
{
if (other is null) return false;
if (ValueId != other.ValueId)
{
return AttributeId == other.AttributeId &&
ValueId == other.ValueId &&
Weight.RemoveTrailingZeros() == other.Weight.RemoveTrailingZeros() &&
WeightUnit == other.WeightUnit &&
AttributeName == other.AttributeName &&
ValueName == other.ValueName;
}
else
{
return AttributeId == other.AttributeId &&
ValueId == other.ValueId &&
AttributeName == other.AttributeName;
}
}
public override bool Equals(object obj) => Equals(obj as ProductSkuModel);
public override int GetHashCode()
{
unchecked
{
int hash = 17;
hash = hash * 23 + AttributeId.GetHashCode();
hash = hash * 23 + ValueId.GetHashCode();
hash = hash * 23 + Weight.GetHashCode();
hash = hash * 23 + WeightUnit.GetHashCode();
hash = hash * 23 + (AttributeName?.GetHashCode() ?? 0);
hash = hash * 23 + (ValueName?.GetHashCode() ?? 0);
return hash;
}
}
}
}

View File

@@ -0,0 +1,75 @@
namespace Atomx.Admin.Client.Models
{
public class ProductStockAttributeModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 属性ID
/// </summary>
public long AttributeId { get; set; }
/// <summary>
/// 控件的类型
/// </summary>
public int ControlType { get; set; }
/// <summary>
/// 必须填重量
/// </summary>
public bool WeightIsRequired { get; set; }
/// <summary>
/// 重量单位,1毫克mg2克g,3千克kg,4吨t5磅lb6盎司oz
/// </summary>
public int WeightUnit { get; set; }
/// <summary>
/// 属性名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 是否拥有规格图片
/// </summary>
public bool Image { get; set; }
/// <summary>
/// 属性排序
/// </summary>
public int DisplayOrder { get; set; }
/// <summary>
/// 产品属性值
/// </summary>
public List<ProductAttributeValueModel> ProductAttributeValues { get; set; } = new List<ProductAttributeValueModel>();
/// <summary>
/// 新产品属性值
/// </summary>
public ProductAttributeValueModel AttributeValue { get; set; } = new ProductAttributeValueModel();
/// <summary>
///
/// </summary>
public string SelectOption { get; set; } = string.Empty;
/// <summary>
/// 输入的新属性值
/// </summary>
public string InputText { get; set; } = string.Empty;
/// <summary>
/// 是否编辑状态
/// </summary>
public bool AddAttribute { get; set; }
/// <summary>
/// 是否是必须的属性
/// </summary>
public bool IsRequired { get; set; }
}
}

View File

@@ -0,0 +1,32 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class ProductStockModel: ProductAttributeCombination
{
/// <summary>
/// 产品名称
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 封面图片
/// </summary>
public string? Image { get; set; } = string.Empty;
/// <summary>
/// 产品SKU信息
/// </summary>
public List<ProductSkuModel> Sku { get; set; } = new();
/// <summary>
/// 仓库ID
/// </summary>
public long WarehouseId { get; set; }
/// <summary>
/// 添加库存
/// </summary>
public int AddStockQuantity { get; set; }
}
}

View File

@@ -0,0 +1,22 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品SKU库存量模型
/// </summary>
public class ProductStockUnitModel : ProductAttributeCombination
{
/// <summary>
/// 产品名称
/// </summary>
public string Title { get; set; } = string.Empty;
/// <summary>
/// 封面图片
/// </summary>
public string? Image { get; set; } = string.Empty;
public List<ProductSkuModel> Sku { get; set; } = new();
}
}

View File

@@ -0,0 +1,23 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 产品SKU库存量搜索模型
/// </summary>
public class ProductStockUnitSearch : BaseSearch
{
/// <summary>
/// 产品ID
/// </summary>
public int Type { get; set; }
/// <summary>
/// 产品名称
/// </summary>
public string Key { get; set; } = string.Empty;
/// <summary>
/// 重量
/// </summary>
public decimal Weight { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class ProductTransferSearch : BaseSearch
{
}
}

View File

@@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class RawMaterialBatchSearch : BaseSearch
{
/// <summary>
/// 原料类型ID
/// </summary>
public long MaterialId { get; set; }
/// <summary>
/// 原料归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long StoreId { get; set; }
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class RawMaterialRecordSearch : BaseSearch
{
/// <summary>
/// 原料类型ID
/// </summary>
public long MaterialId { get; set; }
/// <summary>
/// 原料归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long StoreId { get; set; }
}
}

View File

@@ -0,0 +1,22 @@
namespace Atomx.Admin.Client.Models
{
public class RawMaterialSearch : BaseSearch
{
/// <summary>
/// 原料类型ID
/// </summary>
public long MaterialId { get; set; }
/// <summary>
/// 原料归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long StoreId { get; set; }
}
}

View File

@@ -0,0 +1,25 @@
namespace Atomx.Admin.Client.Models
{
public class RawMaterialTransferSearch : BaseSearch
{
/// <summary>
/// 原料类型ID
/// </summary>
public long MaterialId { get; set; }
/// <summary>
/// 原料归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long FromStoreId { get; set; }
/// <summary>
/// 原料归属店铺网点ID
/// </summary>
public long ToStoreId { get; set; }
}
}

View File

@@ -0,0 +1,47 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace Atomx.Admin.Client.Models
{
public class RoleModel
{
/// <summary>
/// 数据ID
/// </summary>
public int Id { get; set; }
/// <summary>
/// 角色类型
/// </summary>
public int Type { get; set; }
/// <summary>
/// 角色名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 说明
/// </summary>
public string Description { get; set; } = string.Empty;
/// <summary>
/// 权限
/// </summary>
public string Permission { get; set; } = string.Empty;
/// <summary>
/// 是否系统角色
/// </summary>
public bool IsSystemRole { get; set; }
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
/// <summary>
/// 是否是编辑
/// </summary>
public bool IsEdit { get; set; }
}
}

View File

@@ -0,0 +1,11 @@
namespace Atomx.Admin.Client.Models
{
public class RolePermissionGroup
{
public string Category { get; set; }
public string CategoryName { get; set; }
public List<RolePermissionItem> PermissionItems { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace Atomx.Admin.Client.Models
{
public class RolePermissionItem
{
public string Name { get; set; }
public string Description { get; set; }
public bool IsSelected { get; set; }
}
}

View File

@@ -0,0 +1,7 @@
namespace Atomx.Admin.Client.Models
{
public class RoleSearch
{
public string? Name { get; set; }
}
}

View File

@@ -0,0 +1,26 @@
namespace Atomx.Admin.Client.Models
{
public class SiteAppModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 网站应用类型
/// </summary>
public int Type { get; set; }
/// <summary>
/// 网站应用名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace Atomx.Admin.Client.Models
{
public class SiteAppSearch : BaseSearch
{
public int? Type { get; set; }
public string Name { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,9 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class SpecificationAttributeItemModel:SpecificationAttribute
{
public string CategoryName { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,47 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
namespace Atomx.Admin.Client.Models
{
public class SpecificationAttributeModel
{
/// <summary>
/// 属性ID
/// </summary>
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Key]
public long Id { get; set; }
/// <summary>
/// 上级属性,用于规格属性做分组
/// </summary>
public long ParentId { get; set; }
/// <summary>
/// 分类ID
/// </summary>
public long CategoryId { 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 DisplayOrder { get; set; }
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,47 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
namespace Atomx.Admin.Client.Models
{
public class SpecificationAttributeOptionModel
{
/// <summary>
/// 预设值ID
/// </summary>
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Key]
public long Id { get; set; }
/// <summary>
/// 供应商自定义值
/// </summary>
public long VendorId { 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 DisplayOrder { get; set; }
/// <summary>
/// 是否通用的
/// </summary>
public bool Standard { get; set; }
/// <summary>
/// 数据状态
/// </summary>
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,15 @@
namespace Atomx.Admin.Client.Models
{
public class SpecificationAttributeOptionSearch:BaseSearch
{
/// <summary>
/// 值
/// </summary>
public string? Value { get; set; }
/// <summary>
/// 规格ID
/// </summary>
public long SpecificationId { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
namespace Atomx.Admin.Client.Models
{
public class SpecificationAttributeSearch : BaseSearch
{
/// <summary>
/// 名称
/// </summary>
public string? Name { get; set; }
public long CategoryId { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class StoreProductItemSearch
{
}
}

View File

@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class StoreSearch : BaseSearch
{
}
}

View File

@@ -0,0 +1,42 @@
namespace Atomx.Admin.Client.Models
{
public class UploadFileModel
{
public long Id { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public int Type { get; set; }
/// <summary>
/// 文件名
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 存放路径
/// </summary>
public string Path { get; set; } = string.Empty;
/// <summary>
/// 文件扩展
/// </summary>
public string Extension { get; set; } = string.Empty;
/// <summary>
/// 文件扩展
/// </summary>
public string ContentType { get; set; } = string.Empty;
/// <summary>
/// 创建用户ID
/// </summary>
public long CreateUid { get; set; }
/// <summary>
/// 创建用户名
/// </summary>
public string CreateBy { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class UploadFileSearch : BaseSearch
{
/// <summary>
/// 文件类型
/// </summary>
public int? Type { get; set; }
/// <summary>
/// 名称
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
}
}

View File

@@ -0,0 +1,41 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Atomx.Admin.Client.Models
{
public class UserSearch : BaseSearch
{
/// <summary>
/// 用户名或昵称
/// </summary>
public string? Username { get; set; }
/// <summary>
/// 邮件地址
/// </summary>
public string? Email { get; set; }
/// <summary>
/// 手机号码
/// </summary>
public string? Mobile { get; set; }
/// <summary>
/// 真实姓名
/// </summary>
public string? RealName { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public DateTime?[] RangeTime { get; set; } = new DateTime?[] { null, null };
/// <summary>
/// 状态
/// </summary>
public string? Status { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using Atomx.Common.Entities;
namespace Atomx.Admin.Client.Models
{
public class WarehouseItemModel:Warehouse
{
/// <summary>
/// 公司名称
/// </summary>
public string CorporationName { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,28 @@
namespace Atomx.Admin.Client.Models
{
/// <summary>
/// 仓库模型
/// </summary>
public class WarehouseModel
{
/// <summary>
/// 数据ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 归属公司ID
/// </summary>
public long CorporationId { get; set; }
/// <summary>
/// 分类名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 是否可用
/// </summary>
public bool Enabled { get; set; }
}
}

View File

@@ -0,0 +1,20 @@
namespace Atomx.Admin.Client.Models
{
public class WarehouseSearch : BaseSearch
{
/// <summary>
/// 仓库名称
/// </summary>
public string? Name { get; set; } = string.Empty;
/// <summary>
/// 企业ID
/// </summary>
public long CorporationId { get; set; } = 0;
/// <summary>
/// 企业名称
/// </summary>
public string CorporationName { get; set; } = string.Empty;
}
}