You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

382 lines
11 KiB
C#

9 months ago
using Newtonsoft.Json;
using NPoco;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace POSV.Entity
{
/// <summary>
/// 交班注册表
/// </summary>
[Serializable]
[JsonObject(MemberSerialization.OptIn)]
[TableName("pos_store_handover")]
[PrimaryKey(new string[] { "id" }, AutoIncrement = false)]
public class HandOverTicket : BaseEntity
{
public HandOverTicket()
{
}
/// <summary>
/// 租户编码
/// </summary>
[JsonProperty(PropertyName = "tenantId")]
[Column("tenantId")]
public string TenantId{ get; set; }// 租户ID
/// <summary>
/// 交班单号
/// </summary>
[JsonProperty(PropertyName = "no")]
[Column("no")]
public string No{ get; set; }// 交班单号
/// <summary>
/// 门店ID
/// </summary>
[JsonProperty(PropertyName = "storeId")]
[Column("storeId")]
public string StoreId{ get; set; }// 门店ID
/// <summary>
/// 门店编号
/// </summary>
[JsonProperty(PropertyName = "storeNo")]
[Column("storeNo")]
public string StoreNo{ get; set; }// 门店编号
/// <summary>
/// 门店名称
/// </summary>
[JsonProperty(PropertyName = "storeName")]
[Column("storeName")]
public string StoreName{ get; set; }// 门店名称
/// <summary>
/// 员工ID
/// </summary>
[JsonProperty(PropertyName = "workId")]
[Column("workId")]
public string WorkId{ get; set; }// 员工ID
/// <summary>
/// 员工编号
/// </summary>
[JsonProperty(PropertyName = "workNo")]
[Column("workNo")]
public string WorkNo{ get; set; }// 员工编号
/// <summary>
/// 员工名称
/// </summary>
[JsonProperty(PropertyName = "workName")]
[Column("workName")]
public string WorkName{ get; set; }// 员工名称
/// <summary>
/// 班次
/// </summary>
[JsonProperty(PropertyName = "shiftNo")]
[Column("shiftNo")]
public string ShiftNo{ get; set; }// 班次
/// <summary>
/// 班次名称
/// </summary>
[JsonProperty(PropertyName = "shiftName")]
[Column("shiftName")]
public string ShiftName{ get; set; }// 班次名称
/// <summary>
/// 开始时间
/// </summary>
[JsonProperty(PropertyName = "datetimeBegin")]
[Column("datetimeBegin")]
public string DatetimeBegin{ get; set; }// 开始时间
/// <summary>
/// 结束时间
/// </summary>
[JsonProperty(PropertyName = "datetimeEnd")]
[Column("datetimeEnd")]
public string DatetimeEnd{ get; set; }// 结束时间
/// <summary>
/// 交班时间
/// </summary>
[JsonProperty(PropertyName = "datetimeShift")]
[Column("datetimeShift")]
public string DatetimeShift{ get; set; }// 交班时间
/// <summary>
/// 交单工号
/// </summary>
[JsonProperty(PropertyName = "acceptWorkerNo")]
[Column("acceptWorkerNo")]
public string AcceptWorkerNo{ get; set; }// 交单工号
/// <summary>
/// 交单POS
/// </summary>
[JsonProperty(PropertyName = "posNo")]
[Column("posNo")]
public string PosNo{ get; set; }// 交单POS
/// <summary>
/// 备注
/// </summary>
[JsonProperty(PropertyName = "memo")]
[Column("memo")]
public string Memo{ get; set; }// 备注
/// <summary>
/// 总人数
/// </summary>
[JsonProperty(PropertyName = "peopleCount")]
[Column("peopleCount")]
public int PeopleCount{ get; set; }// 总人数
/// <summary>
/// 成交单数
/// </summary>
[JsonProperty(PropertyName = "dealTicketCount")]
[Column("dealTicketCount")]
public int DealTicketCount{ get; set; }// 成交单数
/// <summary>
/// 成交金额
/// </summary>
[JsonProperty(PropertyName = "dealAmount")]
[Column("dealAmount")]
public decimal DealAmount{ get; set; }// 成交金额
/// <summary>
/// 退单次数
/// </summary>
[JsonProperty(PropertyName = "backTicketCount")]
[Column("backTicketCount")]
public int BackTicketCount{ get; set; }// 退单次数
/// <summary>
/// 退单金额
/// </summary>
[JsonProperty(PropertyName = "backAmount")]
[Column("backAmount")]
public decimal BackAmount{ get; set; }// 退单金额
/// <summary>
/// 合计单数
/// </summary>
[JsonProperty(PropertyName = "ticketCount")]
[Column("ticketCount")]
public int TicketCount{ get; set; }// 合计单数
/// <summary>
/// 合计金额
/// </summary>
[JsonProperty(PropertyName = "amount")]
[Column("amount")]
public decimal Amount{ get; set; } = 0.0M;// 合计金额
/// <summary>
/// 优惠金额
/// </summary>
[JsonProperty(PropertyName = "discountMoney")]
[Column("discountMoney")]
public decimal DiscountMoney{ get; set; } = 0.0M;// 优惠金额
/// <summary>
/// 其他优惠
/// </summary>
[JsonProperty(PropertyName = "otherDiscountMoney")]
[Column("otherDiscountMoney")]
public decimal OtherDiscountMoney { get; set; } = 0.0M;// 其他优惠
/// <summary>
/// 卡券优惠
/// </summary>
[JsonProperty(PropertyName = "couponDiscountMoney")]
[Column("couponDiscountMoney")]
public decimal CouponDiscountMoney { get; set; } = 0.0M;// 卡券优惠
/// <summary>
/// 应收金额
/// </summary>
[JsonProperty(PropertyName = "receivable")]
[Column("receivable")]
public decimal Receivable{ get; set; } = 0.0M;// 应收金额
/// <summary>
/// 抹零金额
/// </summary>
[JsonProperty(PropertyName = "maling")]
[Column("maling")]
public decimal Maling { get; set; } = 0.0M;// 抹零金额
/// <summary>
/// 实收金额
/// </summary>
[JsonProperty(PropertyName = "paid")]
[Column("paid")]
public decimal Paid => this.Receivable - this.Maling;// 实收金额
/// <summary>
/// 充值笔数
/// </summary>
[JsonProperty(PropertyName = "cardCount")]
[Column("cardCount")]
public int CardCount{ get; set; }// 充值笔数
/// <summary>
/// 卡充值金额
/// </summary>
[JsonProperty(PropertyName = "cardRealMoney")]
[Column("cardRealMoney")]
public decimal CardRealMoney{ get; set; } = 0.0M;// 卡充值金额
/// <summary>
/// 退卡次数
/// </summary>
[JsonProperty(PropertyName = "cardRefundCount")]
[Column("cardRefundCount")]
public int CardRefundCount { get; set; }// 退卡次数
/// <summary>
/// 退卡金额
/// </summary>
[JsonProperty(PropertyName = "cardRefundMoney")]
[Column("cardRefundMoney")]
public decimal CardRefundMoney { get; set; } = 0.0M;// 退卡金额
/// <summary>
/// 支付实收金额
/// </summary>
[JsonProperty(PropertyName = "realMoney")]
[Column("realMoney")]
public decimal RealMoney { get; set; } = 0.0M;// 支付实收金额
/// <summary>
/// 支付虚收金额
/// </summary>
[JsonProperty(PropertyName = "virtualMoney")]
[Column("virtualMoney")]
public decimal VirtualMoney { get; set; } = 0.0M;// 支付虚收金额
/// <summary>
/// 营业收入金额
/// </summary>
[JsonProperty(PropertyName = "sumRealMoney")]
[Column("sumRealMoney")]
public decimal SumRealMoney => this.Amount -this.Maling- this.DiscountMoney + this.CardRealMoney - this.CardRefundMoney;// 营业收入金额
/// <summary>
/// 非营业收入
/// </summary>
[JsonProperty(PropertyName = "inmoney")]
[Column("inmoney")]
public decimal Inmoney { get; set; } = 0.0M;// 非营业收入
/// <summary>
/// 非营业支出
/// </summary>
[JsonProperty(PropertyName = "outmoney")]
[Column("outmoney")]
public decimal Outmoney{ get; set; } = 0.0M;// 非营业支出
/// <summary>
/// 配送费用(微信点餐)
/// </summary>
[JsonProperty(PropertyName = "distributionFee")]
[Column("distributionFee")]
public decimal DistributionFee { get; set; }// 配送费用(微信点餐)
/// <summary>
/// 班次总收入金额
/// </summary>
[JsonProperty(PropertyName = "shiftAmount")]
[Column("shiftAmount")]
public decimal ShiftAmount => this.SumRealMoney + this.Inmoney - this.Outmoney + this.DistributionFee;// 班次总收入金额
/// <summary>
/// 备用金
/// </summary>
[JsonProperty(PropertyName = "imprest")]
[Column("imprest")]
public decimal Imprest{ get; set; }// 备用金
/// <summary>
/// 设备名称
/// </summary>
[JsonProperty(PropertyName = "deviceName")]
[Column("deviceName")]
public string DeviceName { get; set; }
/// <summary>
/// 设备MAC
/// </summary>
[JsonProperty(PropertyName = "deviceMac")]
[Column("deviceMac")]
public string DeviceMac { get; set; }
/// <summary>
/// 设备IP
/// </summary>
[JsonProperty(PropertyName = "deviceIp")]
[Column("deviceIp")]
public string DeviceIp { get; set; }
/// <summary>
/// 支付方式明细
/// </summary>
[JsonProperty(PropertyName = "detail")]
public List<HandOverDetail> Detail { get; set; }
/// <summary>
/// 交班杯子盘点
/// </summary>
[JsonProperty(PropertyName = "part")]
public List<HandOverDetailPart> Part { get; set; }
/// <summary>
/// 交班支付方式
/// </summary>
[JsonProperty(PropertyName = "pay")]
public List<HandOverPay> Pay { get; set; }
/// <summary>
/// 交班营业模式
/// </summary>
[JsonProperty(PropertyName = "mode")]
public List<HandOverSaleMode> Mode { get; set; }
/// <summary>
/// 类别汇总
/// </summary>
[Ignore]
public List<HandOverProductType> ProductType { get; set; }
[Ignore]
public List<HandOverProduct> Product { get; set; }
[Ignore]
public List<HandOverInfo> Info { get; set; }
[Ignore]
public decimal handMoney { get; set; }//手工金额
[Ignore]
public decimal diffMoney { get; set; }//差异金额
[Ignore]
public string PrintType { get; set; }
}
}