using System.Xml.Serialization;
using Hncore.Infrastructure.Common;

namespace Hncore.Pass.PaymentCenter.WeiFuTong.QrPay
{
    [XmlRoot("xml", Namespace = "")]
    public class QrPayCreateOrderRequest: WeiFuTongRequestBase
    {
        /// <summary>
        /// 商户系统内部的订单号 ,5到32个字符、 只能包含字母数字或者下划线，区分大小写，每次下单请求确保在商户系统唯一
        /// </summary>
        [XmlElement("out_trade_no")]
        public string OutTradeNo { get; set; }
        
        /// <summary>
        /// 商品描述
        /// </summary>
        [XmlElement("body")]
        public string Body { get; set; }
        
        /// <summary>
        /// 总金额，以分为单位，不允许包含任何字、符号
        /// </summary>
        [XmlElement("total_fee")]
        public int TotalFee { get; set; }
        
        /// <summary>
        /// 订单生成的机器 IP
        /// </summary>
        [XmlElement("mch_create_ip")]
        public string MchCreateIp { get; set; } = NetworkHelper.GetPublicIp();
        
        [XmlElement("notify_url")]
        public string NotifyUrl { get; set; }
        
        public QrPayCreateOrderRequest(string service) : base(service)
        {
        }
    }
}