一、原因
用户希望后台维护每日预约送货/提货时间配置一键生成,不需要过多操作。
二、整理实现思路
1.灵活维护/配置送货、提货时间段及允许预约数量的模板,如图所示:
2.预约日期处理:
① 查找提货/送货时间配置的预约日期中最新一条数据大于等于当天日期,则预约日期自增一天;
② 查找提货/送货时间配置的预约日期中最新一条数据小于当天日期,则默认当天日期;
③ 预约日期唯一,重复校验
3.把维护预约时间段模板导入预约送货/提货时间段配置数据:
① 查询送货/提货时间段模板配置按升序的排序数据信息
② 数据添加预约送货/提货时间段配置的集合中,如图所示:
③ 注意点:时间段:22:00-8:00,处理当天日期时间段和第二天日期时间段,如果开始时间大于截至时间,则自增加1天处理,如图所示:
④ 查找提货/送货时间配置的预约日期中最新一条数据,如图所示:
通过倒叙查找默认第一条;找到最新数据预约日期是2020-07-08
⑤ 字符串截取时间段:
var FPeriod=7:00-8:00;
string time = item.FPeriod;
string[] timeArray = time.Split('-');
timeArray[0]="7:00";
timeArray[1]="8:00";
三、学习内容
1. 通过倒叙查找默认第一条,找到最新数据预约日期的方法;
var Ddate = new XPCollection(Session, CriteriaOperator.Parse("true"),
new SortProperty("FDateTime", DevExpress.Xpo.DB.SortingDirection.Descending)).FirstOrDefault();