using System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json; using NPoco; namespace POSV.Entity { /// /// 门店营业方案 /// /// 接口垃圾的代价: /// /// 1)修改这个类的同时需要考虑HttpResponse.BusinessPlanResponse /// /// [Serializable] [JsonObject(MemberSerialization.OptIn)] [TableName("pos_business_plan")] [PrimaryKey(new string[] { "id" } , AutoIncrement = false)] public class BusinessPlan : BaseEntity { public BusinessPlan() { } /// /// 租户ID /// [JsonProperty(PropertyName = "tenantId")] [Column("tenantId")] public string TenantId { get; set; } /// /// 编号 /// [JsonProperty(PropertyName = "no")] [Column("no")] public string No { get; set; } /// /// 名称 /// [JsonProperty(PropertyName = "name")] [Column("name")] public string Name { get; set; } /// /// 开始日(0当日;1次日) /// [JsonProperty(PropertyName = "startType")] [Column("startType")] public int StartType { get; set; } /// /// 开始时间 /// [JsonProperty(PropertyName = "startTime")] [Column("startTime")] public string StartTime { get; set; } /// /// 结束日(0当日;1次日) /// [JsonProperty(PropertyName = "endType")] [Column("endType")] public int EndType { get; set; } /// /// 结束时间 /// [JsonProperty(PropertyName = "endTime")] [Column("endTime")] public string EndTime { get; set; } /// /// 扩展字段1 /// [JsonProperty(PropertyName = "ext1")] [Column("ext1")] public string Ext1 { get; set; } /// /// 扩展字段2 /// [JsonProperty(PropertyName = "ext2")] [Column("ext2")] public string Ext2 { get; set; } /// /// 扩展字段3 /// [JsonProperty(PropertyName = "ext3")] [Column("ext3")] public string Ext3 { get; set; } /// /// 开始时间,便于查询使用 /// [JsonIgnore] [Ignore] public string StartTimeSimple { get { //结束时间为次日,当前时间尚未到达今天的开始时间,这时的营业日依然归属于前一天 if(DateTime.Now.ToString("HH:mm").CompareTo(this.StartTime) < 0 && this.EndType == 1) { return string.Format("{0} {1}:00", DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"), this.StartTime); } else { return string.Format("{0} {1}:00", DateTime.Now.ToString("yyyy-MM-dd"), this.StartTime); } } } /// /// 结束时间,便于查询使用 /// [JsonIgnore] [Ignore] public string EndTimeSimple { get { if(this.EndType == 0) //当日 { return string.Format("{0} {1}:00", DateTime.Now.ToString("yyyy-MM-dd"), this.EndTime); } else //次日 { //开始时间尚未到达今天的开始时间,结束日依然为今天 if (DateTime.Now.ToString("HH:mm").CompareTo(this.StartTime) < 0) { return string.Format("{0} {1}:00", DateTime.Now.ToString("yyyy-MM-dd"), this.EndTime); } else { return string.Format("{0} {1}:00", DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"), this.EndTime); } } } } } }