我有以下问题:我建立了一个查询,该查询在共享点列表中搜索我的项目,该列表在创建新项目时检查给定日期范围内的项目是否存在。另外,我使用添加用户名的用户名进行查询,但不包括取消和待处理的状态。这几乎可以正常工作,但是例如当我在列表中具有开始日期(yyyy-MM-dd):2019-06-03和到期日期:2019-06-07的项目时。我想添加起始日期和到期日期均为2019-06-05的项目,那么查询未向我返回列表中的现有项目。.例如,当我添加起始日期为2019-的新项目时06-01和到期日2019-06-04它返回了我之前添加的项目。请帮我重构它,因为我不知道该怎么做。
<Where>
<And>
<And>
<Or>
<And>
<Geq>
<FieldRef Name='StartDate' />
<Value Type='DateTime'>2019-06-05T00:00:00Z</Value>
</Geq>
<Leq>
<FieldRef Name='StartDate' />
<Value Type='DateTime'>2019-06-05T00:00:00Z</Value>
</Leq>
</And>
<And>
<Geq>
<FieldRef Name='DueDate' />
<Value Type='DateTime'>2019-06-05T00:00:00Z</Value>
</Geq>
<Leq>
<FieldRef Name='DueDate' />
<Value Type='DateTime'>2019-06-05T00:00:00Z</Value>
</Leq>
</And>
</Or>
<Eq>
<FieldRef Name='Employee' />
<Value Type='PersonOrGroup'>User Name</Value>
</Eq>
</And>
<And>
<Neq>
<FieldRef Name='Status' />
<Value Type='Text'>Canceled</Value>
</Neq>
<Neq>
<FieldRef Name='Status' />
<Value Type='Text'>Rejected</Value>
</Neq>
</And>
</And>
</Where>