using System.Text.Json;
namespace Store.Shops.Dtos;
/// 微信店铺业务资料;列表不输出密码与Cookie。
public sealed class ShopDetailsInfo
{
/// 记录ID。
public int Id { get; set; }
/// 店铺登录名。
public string LoginName { get; set; } = "";
/// 店铺ID。
public string ShopId { get; set; } = "";
/// 店铺名称。
public string ShopAccount { get; set; } = "";
/// 所属账号。
public string UserName { get; set; } = "";
/// 分配子账号。
public string SubUserName { get; set; } = "";
/// 店铺分组。
public string GroupName { get; set; } = "";
/// 公司名称。
public string CompanyName { get; set; } = "";
/// 备注。
public string Notes { get; set; } = "";
/// 登录状态。
public string LoginStatus { get; set; } = "";
/// 第二组登录状态。
public string LoginStatus2 { get; set; } = "";
/// 选品操作员。
public string OperateSubSaName { get; set; } = "";
/// 创建时间。
public DateTime? AddTime { get; set; }
/// 修改时间。
public DateTime? MdyTime { get; set; }
/// 操作员分配时间。
public DateTime? AddSubSaTime { get; set; }
/// 微信OpenId。
public string Openid { get; set; } = "";
/// 永久有效标志。
public bool NeverExpires { get; set; }
/// 剩余上传额度。
public int AddProductRemaining { get; set; }
/// 额度所属月份。
public byte AddProductMonth { get; set; }
/// 到期Unix秒数。
public int ExpireTime { get; set; }
/// 充值用户店铺是否已过期。
public bool IsPointShopExpire { get; set; }
/// ERP店铺ID。
public long? ErpShopId { get; set; }
/// ERP公司账号ID。
public long? ErpCorporateAccountUserId { get; set; }
/// ERP管理账号ID。
public long? ErpManageUserId { get; set; }
}
/// 专用Cookie接口响应,仅返回已授权店铺的登录凭据。
/// 微信店铺AppId。
/// 指定店铺的Cookie内容。
public sealed record ShopCookieInfo(string ShopId, string Cookies);
/// 共享令牌列表和实际缓存刷新时间,仅管理员可读取。
/// 上游返回的令牌列表JSON数组。
/// 数据库缓存的最近刷新时间。
public sealed record TokensInfo(JsonElement Tokens, DateTime MdyTime);