|
@@ -71,6 +71,127 @@ namespace wispro.sp.web.Services
|
|
return fileData;
|
|
return fileData;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public async Task<ListApiResponse<PerformanceItem>> Query(CalMonth calMonth,int pageIndex,int pageSize,string sortFieldName)
|
|
|
|
+ {
|
|
|
|
+ QueryFilter query = new QueryFilter();
|
|
|
|
+ query.userId = 0;
|
|
|
|
+ query.jxType = jxType.all;
|
|
|
|
+ query.CalMonthId = calMonth.Id;
|
|
|
|
+ query.PageIndex = pageIndex;
|
|
|
|
+ query.PageSize = pageSize;
|
|
|
|
+
|
|
|
|
+ if (!string.IsNullOrEmpty(sortFieldName))
|
|
|
|
+ {
|
|
|
|
+ query.Sorts = new List<OrderField>()
|
|
|
|
+ {
|
|
|
|
+ new OrderField(){FieldName = sortFieldName}
|
|
|
|
+ };
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ var data = await _httpClient.Post<ListApiResponse<PerformanceItem>>($"PerformanceItem/QueryFilter", query);
|
|
|
|
+ return data;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public async Task<ListApiResponse<PerformanceItem>> Query(CalMonth calMonth, QueryModel<PerformanceItem> queryModel)
|
|
|
|
+ {
|
|
|
|
+ QueryFilter query = new QueryFilter();
|
|
|
|
+ query.userId = 0;
|
|
|
|
+ query.jxType = jxType.all;
|
|
|
|
+ query.CalMonthId = calMonth.Id;
|
|
|
|
+
|
|
|
|
+ if (queryModel != null)
|
|
|
|
+ {
|
|
|
|
+
|
|
|
|
+ query.PageIndex = queryModel.PageIndex;
|
|
|
|
+ query.PageSize = queryModel.PageSize;
|
|
|
|
+
|
|
|
|
+ query.ConditionTree = new List<FieldCondition>();
|
|
|
|
+
|
|
|
|
+ foreach (var filter in queryModel.FilterModel)
|
|
|
|
+ {
|
|
|
|
+ foreach (var f in filter.Filters)
|
|
|
|
+ {
|
|
|
|
+ FieldCondition condition = new FieldCondition() { FieldName = filter.FieldName };
|
|
|
|
+ condition.Value = f.Value.ToString();
|
|
|
|
+ condition.ValueType = typeof(PerformanceItem).GetProperty(filter.FieldName).PropertyType.ToString();
|
|
|
|
+ switch (f.FilterCompareOperator)
|
|
|
|
+ {
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.Contains:
|
|
|
|
+ condition.Operator = OperatorEnum.Contains;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.EndsWith:
|
|
|
|
+ condition.Operator = OperatorEnum.EndWith;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.Equals:
|
|
|
|
+ condition.Operator = OperatorEnum.EndWith;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.GreaterThan:
|
|
|
|
+ condition.Operator = OperatorEnum.Greater;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.GreaterThanOrEquals:
|
|
|
|
+ condition.Operator = OperatorEnum.GreaterEqual;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.LessThan:
|
|
|
|
+ condition.Operator = OperatorEnum.Less;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.LessThanOrEquals:
|
|
|
|
+ condition.Operator = OperatorEnum.LessEqual;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.NotContains:
|
|
|
|
+ condition.Operator = OperatorEnum.NotContains;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.NotEquals:
|
|
|
|
+ condition.Operator = OperatorEnum.NotEqual;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCompareOperator.StartsWith:
|
|
|
|
+ condition.Operator = OperatorEnum.StartsWith;
|
|
|
|
+ break;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ switch (f.FilterCondition)
|
|
|
|
+ {
|
|
|
|
+ case AntDesign.TableFilterCondition.And:
|
|
|
|
+ condition.LogicOperate = LogicEnum.And;
|
|
|
|
+ break;
|
|
|
|
+ case AntDesign.TableFilterCondition.Or:
|
|
|
|
+ condition.LogicOperate = LogicEnum.Or;
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ condition.LogicOperate = LogicEnum.And;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ query.ConditionTree.Add(condition);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ query.Sorts = new List<OrderField>();
|
|
|
|
+ foreach (var sort in queryModel.SortModel)
|
|
|
|
+ {
|
|
|
|
+ if (!string.IsNullOrEmpty(sort.Sort))
|
|
|
|
+ {
|
|
|
|
+ query.Sorts.Add(new OrderField() { FieldName = sort.FieldName, Sort = (sort.Sort == "descend" ? 1 : 0) });
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ query.PageIndex = 1;
|
|
|
|
+ query.PageSize = 1;
|
|
|
|
+ query.ConditionTree = new List<FieldCondition>();
|
|
|
|
+ query.Sorts = new List<OrderField>();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ var data = await _httpClient.Post<ListApiResponse<PerformanceItem>>($"PerformanceItem/QueryFilter", query);
|
|
|
|
+ //Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(queryModel));
|
|
|
|
+ return data;
|
|
|
|
+
|
|
|
|
+ }
|
|
public async Task<ListApiResponse<PerformanceItem>> Query(int userid, jxType type, QueryModel<PerformanceItem> queryModel)
|
|
public async Task<ListApiResponse<PerformanceItem>> Query(int userid, jxType type, QueryModel<PerformanceItem> queryModel)
|
|
{
|
|
{
|
|
QueryFilter query = new QueryFilter();
|
|
QueryFilter query = new QueryFilter();
|