/*
* 后台API
*
* No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
*
* OpenAPI spec version: Admin
*
* Generated by: https://github.com/swagger-api/swagger-codegen.git
*/
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System.ComponentModel.DataAnnotations;
using SwaggerDateConverter = IO.Swagger.Client.SwaggerDateConverter;
namespace IO.Swagger.Model
{
///
/// OrderResp
///
[DataContract]
public partial class OrderResp : IEquatable, IValidatableObject
{
///
/// Initializes a new instance of the class.
///
/// 大的原始单号.
/// 单据状态 -99:已删除 -1:NC没有该单数据 1:保存状态,进入NC成功 5: 客服待审 8:财务待审 10:审核-财务确认 20:拒绝-财务审核 50:部分发货 100:全部发货 110:关闭.
/// 补充信息.
/// 商品详情.
/// 出库单号.
/// 销售单金额.
/// 服务单金额.
/// 收款单号.
public OrderResp(string sourceOrderNo = default(string), int? status = default(int?), string remark = default(string), List listGoods = default(List), List listStockOrderNo = default(List), double? productOrderAmount = default(double?), double? serviceOrderAmount = default(double?), string receiptNo = default(string))
{
this.SourceOrderNo = sourceOrderNo;
this.Status = status;
this.Remark = remark;
this.ListGoods = listGoods;
this.ListStockOrderNo = listStockOrderNo;
this.ProductOrderAmount = productOrderAmount;
this.ServiceOrderAmount = serviceOrderAmount;
this.ReceiptNo = receiptNo;
}
///
/// 大的原始单号
///
/// 大的原始单号
[DataMember(Name="sourceOrderNo", EmitDefaultValue=false)]
public string SourceOrderNo { get; set; }
///
/// 单据状态 -99:已删除 -1:NC没有该单数据 1:保存状态,进入NC成功 5: 客服待审 8:财务待审 10:审核-财务确认 20:拒绝-财务审核 50:部分发货 100:全部发货 110:关闭
///
/// 单据状态 -99:已删除 -1:NC没有该单数据 1:保存状态,进入NC成功 5: 客服待审 8:财务待审 10:审核-财务确认 20:拒绝-财务审核 50:部分发货 100:全部发货 110:关闭
[DataMember(Name="status", EmitDefaultValue=false)]
public int? Status { get; set; }
///
/// 补充信息
///
/// 补充信息
[DataMember(Name="remark", EmitDefaultValue=false)]
public string Remark { get; set; }
///
/// 商品详情
///
/// 商品详情
[DataMember(Name="listGoods", EmitDefaultValue=false)]
public List ListGoods { get; set; }
///
/// 出库单号
///
/// 出库单号
[DataMember(Name="listStockOrderNo", EmitDefaultValue=false)]
public List ListStockOrderNo { get; set; }
///
/// 销售单金额
///
/// 销售单金额
[DataMember(Name="productOrderAmount", EmitDefaultValue=false)]
public double? ProductOrderAmount { get; set; }
///
/// 服务单金额
///
/// 服务单金额
[DataMember(Name="serviceOrderAmount", EmitDefaultValue=false)]
public double? ServiceOrderAmount { get; set; }
///
/// 收款单号
///
/// 收款单号
[DataMember(Name="receiptNo", EmitDefaultValue=false)]
public string ReceiptNo { get; set; }
///
/// Returns the string presentation of the object
///
/// String presentation of the object
public override string ToString()
{
var sb = new StringBuilder();
sb.Append("class OrderResp {\n");
sb.Append(" SourceOrderNo: ").Append(SourceOrderNo).Append("\n");
sb.Append(" Status: ").Append(Status).Append("\n");
sb.Append(" Remark: ").Append(Remark).Append("\n");
sb.Append(" ListGoods: ").Append(ListGoods).Append("\n");
sb.Append(" ListStockOrderNo: ").Append(ListStockOrderNo).Append("\n");
sb.Append(" ProductOrderAmount: ").Append(ProductOrderAmount).Append("\n");
sb.Append(" ServiceOrderAmount: ").Append(ServiceOrderAmount).Append("\n");
sb.Append(" ReceiptNo: ").Append(ReceiptNo).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
///
/// Returns the JSON string presentation of the object
///
/// JSON string presentation of the object
public virtual string ToJson()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
///
/// Returns true if objects are equal
///
/// Object to be compared
/// Boolean
public override bool Equals(object input)
{
return this.Equals(input as OrderResp);
}
///
/// Returns true if OrderResp instances are equal
///
/// Instance of OrderResp to be compared
/// Boolean
public bool Equals(OrderResp input)
{
if (input == null)
return false;
return
(
this.SourceOrderNo == input.SourceOrderNo ||
(this.SourceOrderNo != null &&
this.SourceOrderNo.Equals(input.SourceOrderNo))
) &&
(
this.Status == input.Status ||
(this.Status != null &&
this.Status.Equals(input.Status))
) &&
(
this.Remark == input.Remark ||
(this.Remark != null &&
this.Remark.Equals(input.Remark))
) &&
(
this.ListGoods == input.ListGoods ||
this.ListGoods != null &&
this.ListGoods.SequenceEqual(input.ListGoods)
) &&
(
this.ListStockOrderNo == input.ListStockOrderNo ||
this.ListStockOrderNo != null &&
this.ListStockOrderNo.SequenceEqual(input.ListStockOrderNo)
) &&
(
this.ProductOrderAmount == input.ProductOrderAmount ||
(this.ProductOrderAmount != null &&
this.ProductOrderAmount.Equals(input.ProductOrderAmount))
) &&
(
this.ServiceOrderAmount == input.ServiceOrderAmount ||
(this.ServiceOrderAmount != null &&
this.ServiceOrderAmount.Equals(input.ServiceOrderAmount))
) &&
(
this.ReceiptNo == input.ReceiptNo ||
(this.ReceiptNo != null &&
this.ReceiptNo.Equals(input.ReceiptNo))
);
}
///
/// Gets the hash code
///
/// Hash code
public override int GetHashCode()
{
unchecked // Overflow is fine, just wrap
{
int hashCode = 41;
if (this.SourceOrderNo != null)
hashCode = hashCode * 59 + this.SourceOrderNo.GetHashCode();
if (this.Status != null)
hashCode = hashCode * 59 + this.Status.GetHashCode();
if (this.Remark != null)
hashCode = hashCode * 59 + this.Remark.GetHashCode();
if (this.ListGoods != null)
hashCode = hashCode * 59 + this.ListGoods.GetHashCode();
if (this.ListStockOrderNo != null)
hashCode = hashCode * 59 + this.ListStockOrderNo.GetHashCode();
if (this.ProductOrderAmount != null)
hashCode = hashCode * 59 + this.ProductOrderAmount.GetHashCode();
if (this.ServiceOrderAmount != null)
hashCode = hashCode * 59 + this.ServiceOrderAmount.GetHashCode();
if (this.ReceiptNo != null)
hashCode = hashCode * 59 + this.ReceiptNo.GetHashCode();
return hashCode;
}
}
///
/// To validate all properties of the instance
///
/// Validation context
/// Validation Result
IEnumerable IValidatableObject.Validate(ValidationContext validationContext)
{
yield break;
}
}
}