| | |
| | | ) : |
| | | IRequestHandler<GetEnterpriseEmployeesQuery, GetEnterpriseEmployeesQueryResult>, |
| | | IRequestHandler<GetEnterpriseEmployeeQuery, GetEnterpriseEmployeeQueryResult>, |
| | | IRequestHandler<GetEnterpriseEmployeeElectronSignsQuery, GetEnterpriseEmployeeElectronSignsQueryResult>, |
| | | IRequestHandler<GetPersonalUserElectronSignsQuery, GetPersonalUserElectronSignsQueryResult>, |
| | | IRequestHandler<GetPersonalUserElectronSignQuery, GetPersonalUserElectronSignQueryResult> |
| | | { |
| | | private readonly IRepository<EnterpriseEmployee> rep = rep; |
| | |
| | | } |
| | | if (request.UserSignContractStatus.HasValue) |
| | | { |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus); |
| | | if (logier.ClientType == EnumClientType.Wxmp) |
| | | { |
| | | switch (request.UserSignContractStatus.Value) |
| | | { |
| | | case EnumTaskUserSignContractStatus.Wait: |
| | | q = q.Where(it => it.UserSignContractStatus == null || it.UserSignContractStatus == request.UserSignContractStatus); |
| | | break; |
| | | case EnumTaskUserSignContractStatus.Pass: |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus && it.EnterpriseSignContractStatus == EnumTaskUserSignContractStatus.Pass); |
| | | break; |
| | | case EnumTaskUserSignContractStatus.Stop: |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus); |
| | | break; |
| | | default: |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus); |
| | | break; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus); |
| | | } |
| | | } |
| | | if (request.EnterpriseSignContractStatus.HasValue) |
| | | { |
| | |
| | | /// <param name="request"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<GetEnterpriseEmployeeElectronSignsQueryResult> Handle(GetEnterpriseEmployeeElectronSignsQuery request, CancellationToken cancellationToken) |
| | | public async Task<GetPersonalUserElectronSignsQueryResult> Handle(GetPersonalUserElectronSignsQuery request, CancellationToken cancellationToken) |
| | | { |
| | | var logier = JwtUtils.GetCurrentLogier(); |
| | | var q = rep.AsQueryable().AsNoTracking() |
| | | .Where(it => it.UserId == logier.Id); |
| | | if (request.UserSignContractStatus.HasValue) |
| | | { |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus.Value); |
| | | if (request.UserSignContractStatus == EnumTaskUserSignContractStatus.Pass) |
| | | { |
| | | q = q.Where(it => it.UserSignContractStatus == EnumTaskUserSignContractStatus.Pass && it.EnterpriseSignContractStatus == EnumTaskUserSignContractStatus.Pass); |
| | | } |
| | | else |
| | | { |
| | | q = q.Where(it => it.UserSignContractStatus == request.UserSignContractStatus.Value); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | q = q.Where(it => |
| | | it.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait |
| | | || it.UserSignContractStatus == EnumTaskUserSignContractStatus.Effect |
| | | || it.UserSignContractStatus == EnumTaskUserSignContractStatus.Pass && it.EnterpriseSignContractStatus == EnumTaskUserSignContractStatus.Pass |
| | | || it.UserSignContractStatus == EnumTaskUserSignContractStatus.Stop); |
| | | } |
| | | var s = q.Select(it => new GetEnterpriseEmployeeElectronSignsQueryResultItem |
| | | var s = q.Select(it => new GetPersonalUserElectronSignsQueryResultItem |
| | | { |
| | | Id = it.Id, |
| | | EnterpriseName = it.Enterprise.EnterpriseName, |
| | | UserSignContractStatus = it.UserSignContractStatus, |
| | | }); |
| | | return await request.PageModel.GetPagedListAsync<GetEnterpriseEmployeeElectronSignsQueryResult, GetEnterpriseEmployeeElectronSignsQueryResultItem>(s, cancellationToken); |
| | | return await request.PageModel.GetPagedListAsync<GetPersonalUserElectronSignsQueryResult, GetPersonalUserElectronSignsQueryResultItem>(s, cancellationToken); |
| | | } |
| | | |
| | | /// <summary> |