using System.ComponentModel.DataAnnotations; using Newtonsoft.Json; using Newtonsoft.Json.Serialization; namespace PaySharp.Alipay.Domain { [JsonObject(NamingStrategyType = typeof(SnakeCaseNamingStrategy))] public class Goods { /// /// 商品的编号 /// [JsonProperty("goods_id")] [StringLength(32, ErrorMessage = "商品的编号最大长度为32位")] [Required(ErrorMessage = "请设置商品的编号")] public string Id { get; set; } /// /// 支付宝定义的统一商品编号 /// [StringLength(32, ErrorMessage = "商品的编号最大长度为32位")] public string AlipayGoodsId { get; set; } /// /// 商品名称 /// [JsonProperty("goods_name")] [StringLength(256, ErrorMessage = "商品名称最大长度为256位")] [Required(ErrorMessage = "请设置商品名称")] public string Name { get; set; } /// /// 商品数量 /// [Required(ErrorMessage = "请设置商品数量")] public int Quantity { get; set; } /// /// 商品单价,单位为元 /// [Required(ErrorMessage = "请设置商品单价")] public double Price { get; set; } /// /// 商品类目 /// [JsonProperty("goods_category")] [StringLength(24, ErrorMessage = "商品类目最大长度为24位")] public string Category { get; set; } /// /// 商品描述信息 /// [StringLength(1000, ErrorMessage = "商品描述信息最大长度为1000位")] public string Body { get; set; } /// /// 商品的展示地址 /// [StringLength(400, ErrorMessage = "商品的展示地址最大长度为400位")] public string ShowUrl { get; set; } } }