| | |
| | | IRequestHandler<GetTaskInfosQuery, GetTaskInfosQueryResult>, |
| | | IRequestHandler<GetPersonalApplyTaskInfosQuery, GetPersonalApplyTaskInfosQueryResult>, |
| | | IRequestHandler<GetPersonalHireTaskInfosQuery, GetPersonalHireTaskInfosQueryResult>, |
| | | IRequestHandler<GetPersonalCancelTaskInfosQuery, GetPersonalCancelTaskInfosQueryResult> |
| | | IRequestHandler<GetPersonalCancelTaskInfosQuery, GetPersonalCancelTaskInfosQueryResult>, |
| | | IRequestHandler<GetSettlementTasksQuery, GetSettlementTasksQueryResult>, |
| | | IRequestHandler<GetSettlementTaskQuery, GetSettlementTaskQueryResult> |
| | | |
| | | { |
| | | private readonly IRepository<TaskInfo> rep = rep; |
| | |
| | | { |
| | | it.Id, |
| | | it.HireStatus, |
| | | it.EnterpriseEmployeeId, |
| | | it.EnterpriseEmployee.UserSignContractStatus |
| | | }) |
| | | .FirstOrDefaultAsync(); |
| | | if (taskUser != null) |
| | | { |
| | | model.EnterpriseEmployeeId = taskUser.EnterpriseEmployeeId; |
| | | model.HireStatus = taskUser.HireStatus; |
| | | model.ApplyButton = taskUser.HireStatus == EnumTaskUserHireStatus.Wait |
| | | ? GetTaskInfoQueryResultApplyButton.WaitHire |
| | |
| | | Id = t.Id, |
| | | Name = t.Name, |
| | | Code = t.Code, |
| | | EnterpriseName = t.Enterprise.EnterpriseName, |
| | | UserName = t.Enterprise.Users.Where(u => u.Id == t.CreatedUserId).Select(u => u.UserName).FirstOrDefault(), |
| | | BillingMethod = t.BillingMethod, |
| | | ServiceFee = t.ServiceFee, |
| | | SettlementCycle = t.SettlementCycle, |
| | |
| | | CheckReceiveStatus = t.CheckReceiveStatus, |
| | | CreatedTime = t.CreatedTime, |
| | | RecommendStatus = t.RecommendStatus, |
| | | RecommendTime = t.RecommendTime, |
| | | SettlementStatus = t.SettlementStatus, |
| | | HireStatus = logier != null && logier.Type == EnumUserType.Personal |
| | | ? t.TaskInfoUsers |
| | | .Where(tu => tu.EnterpriseEmployee.UserId == logier.Id) |
| | | .Select(tu => tu.HireStatus as EnumTaskUserHireStatus?) |
| | | .FirstOrDefault() |
| | | : null |
| | | : null, |
| | | |
| | | }; |
| | | var result = await request.PageModel.GetPagedListAsync<GetTaskInfosQueryResult, GetTaskInfosQueryResultItem>(s, cancellationToken); |
| | | result.ObjectData = count; |
| | |
| | | return await request.PageModel.GetPagedListAsync<GetPersonalCancelTaskInfosQueryResult, GetPersonalCancelTaskInfosQueryResultItem>(s, cancellationToken); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 查询结算任务分页列表数据 |
| | | /// </summary> |
| | | /// <param name="request"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<GetSettlementTasksQueryResult> Handle(GetSettlementTasksQuery request, CancellationToken cancellationToken) |
| | | { |
| | | var logier = JwtUtils.GetCurrentLogier(); |
| | | var q = TaskInfoRepository.GetQueryable(rep, true, logier) |
| | | .Where(it => it.SettlementOrderStatus.HasValue); |
| | | if (request.Keywords.IsNotNull()) |
| | | { |
| | | q = q.Where(it => |
| | | it.Name.Contains(request.Keywords) |
| | | || it.Code.Contains(request.Keywords)); |
| | | } |
| | | if (request.SettlementOrderStatus.HasValue) |
| | | { |
| | | q = q.Where(it => it.SettlementOrderStatus == request.SettlementOrderStatus); |
| | | } |
| | | if (request.SettlementStatus.HasValue) |
| | | { |
| | | q = q.Where(it => it.SettlementStatus == request.SettlementStatus); |
| | | } |
| | | var s = q |
| | | .Select(it=>new GetSettlementTasksQueryResultItem |
| | | { |
| | | Id = it.Id, |
| | | Name = it.Name, |
| | | Code = it.Code, |
| | | SettlementOrderStatus = it.SettlementOrderStatus, |
| | | SettlementOrderName = it.SettlementOrderName, |
| | | SettlementOrderTime = it.SettlementOrderTime, |
| | | ActualSettlementAmount = it.ActualSettlementAmount, |
| | | SettlementAmount = it.SettlementAmount, |
| | | SettlementStatus = it.SettlementStatus, |
| | | SettlementTime = it.SettlementTime, |
| | | SettlementRemark = it.SettlementRemark, |
| | | SettlementUserCount = it.SettlementUserCount |
| | | }); |
| | | return await request.PageModel.GetPagedListAsync<GetSettlementTasksQueryResult, GetSettlementTasksQueryResultItem>(s, cancellationToken); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 查询结算单详情 |
| | | /// </summary> |
| | | /// <param name="request"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public Task<GetSettlementTaskQueryResult> Handle(GetSettlementTaskQuery request, CancellationToken cancellationToken) |
| | | { |
| | | var logier = JwtUtils.GetCurrentLogier(); |
| | | var model = TaskInfoRepository.GetQueryable(rep, true, logier) |
| | | .Where(it => it.Id == request.Id) |
| | | .GetDetail<TaskInfo, GetSettlementTaskQueryResult>(); |
| | | return model; |
| | | } |
| | | } |
| | | } |