sunpengfei
2025-08-22 bcba82fa0870125586a3689274e387210b032089
feat:开发
3个文件已添加
4个文件已修改
277 ■■■■■ 已修改文件
FlexJobApi.Core/Enums/Tasks/EnumTaskUserSignContractStatus.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/FlexJobApi.Core.xml 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Models/UserServer/ElectronSigns/Queries/GetEnabledElectronSignSettingsQuery.cs 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/EnterpriseEmployees/Queries/EnterpriseEmployeeQueryHandler.cs 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Enums/Tasks/EnumTaskUserSignContractStatus.cs
@@ -22,6 +22,14 @@
        /// <summary>
        /// 已拒签
        /// </summary>
        Refuse = 30
        Refuse = 30,
        /// <summary>
        /// 生效中
        /// </summary>
        Effect = 40,
        /// <summary>
        /// 已终止
        /// </summary>
        Stop = 50
    }
}
FlexJobApi.Core/FlexJobApi.Core.xml
@@ -3232,6 +3232,16 @@
            已拒签
            </summary>
        </member>
        <member name="F:FlexJobApi.Core.EnumTaskUserSignContractStatus.Effect">
            <summary>
            生效中
            </summary>
        </member>
        <member name="F:FlexJobApi.Core.EnumTaskUserSignContractStatus.Stop">
            <summary>
            已终止
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.EnumTaskUserSubmitCheckReceiveStatus">
            <summary>
            任务验收状态
@@ -7701,6 +7711,36 @@
        <member name="P:FlexJobApi.Core.GetContractTemplateQueryResultValue.Required">
            <summary>
            是否必填
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.GetEnabledElectronSignSettingsQuery">
            <summary>
            查询已启用的电子签配置
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.GetEnabledElectronSignSettingsQueryResultItem">
            <summary>
            查询已启用的电子签配置-结果
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.GetEnabledElectronSignSettingsQueryResultItem.Access">
            <summary>
            通道
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.GetEnabledElectronSignSettingsQueryResultItem.RealVerifyCost">
            <summary>
            实名费用
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.GetEnabledElectronSignSettingsQueryResultItem.SignCost">
            <summary>
            签约费用
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.GetEnabledElectronSignSettingsQueryResultItem.MergeSignCost">
            <summary>
            一口价
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.GetEnterpriseContractTemplateLogsQuery">
@@ -13112,5 +13152,40 @@
            <param name="xmlDoc"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQuery">
            <summary>
            查询个人用户签约列表
            </summary>
        </member>
        <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQuery.UserSignContractStatus">
            <summary>
            灵工签约状态
            </summary>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResult">
            <summary>
            查询个人用户签约列表
            </summary>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem">
            <summary>
            查询个人用户签约列表
            </summary>
        </member>
        <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem.Id">
            <summary>
            Id
            </summary>
        </member>
        <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem.EnterpriseName">
            <summary>
            企业全称
            </summary>
        </member>
        <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem.UserSignContractStatus">
            <summary>
            灵工签约状态
            </summary>
        </member>
    </members>
</doc>
FlexJobApi.Core/Models/UserServer/ElectronSigns/Queries/GetEnabledElectronSignSettingsQuery.cs
New file
@@ -0,0 +1,43 @@
using MediatR;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
    /// <summary>
    /// 查询已启用的电子签配置
    /// </summary>
    [Resource([EnumResourceController.UserServerElectronSign])]
    public class GetEnabledElectronSignSettingsQuery : IRequest<List<GetEnabledElectronSignSettingsQueryResultItem>>
    {
    }
    /// <summary>
    /// 查询已启用的电子签配置-结果
    /// </summary>
    public class GetEnabledElectronSignSettingsQueryResultItem
    {
        /// <summary>
        /// 通道
        /// </summary>
        public EnumElectronSignAccess Access { get; set; }
        /// <summary>
        /// 实名费用
        /// </summary>
        public decimal? RealVerifyCost { get; set; }
        /// <summary>
        /// 签约费用
        /// </summary>
        public decimal? SignCost { get; set; }
        /// <summary>
        /// 一口价
        /// </summary>
        public decimal? MergeSignCost { get; set; }
    }
}
FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs
New file
@@ -0,0 +1,51 @@
using FlexJobApi.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.UserServer.Application
{
    /// <summary>
    /// 查询个人用户签约列表
    /// </summary>
    [Resource([EnumResourceController.UserServerEnterpriseEmployee])]
    public class GetEnterpriseEmployeeElectronSignsQuery : PagedListQuery<GetEnterpriseEmployeeElectronSignsQueryResult, GetEnterpriseEmployeeElectronSignsQueryResultItem>
    {
        /// <summary>
        /// 灵工签约状态
        /// </summary>
        public EnumTaskUserSignContractStatus? UserSignContractStatus { get; set; }
    }
    /// <summary>
    /// 查询个人用户签约列表
    /// </summary>
    public class GetEnterpriseEmployeeElectronSignsQueryResult : PagedListQueryResult<GetEnterpriseEmployeeElectronSignsQueryResultItem>
    {
    }
    /// <summary>
    /// 查询个人用户签约列表
    /// </summary>
    public class GetEnterpriseEmployeeElectronSignsQueryResultItem
    {
        /// <summary>
        /// Id
        /// </summary>
        public Guid Id { get; set; }
        /// <summary>
        /// 企业全称
        /// </summary>
        public string EnterpriseName { get; set; }
        /// <summary>
        /// 灵工签约状态
        /// </summary>
        public EnumTaskUserSignContractStatus? UserSignContractStatus { get; set; }
    }
}
FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs
New file
@@ -0,0 +1,38 @@
using FlexJobApi.Core;
using Furion.DatabaseAccessor;
using Mapster;
using MediatR;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.UserServer.Application
{
    /// <summary>
    /// 电子签配置查询处理器
    /// </summary>
    public class ElectronSignSettingQueryHandler(
            IRepository<ElectronSignSetting> rep
        ) :
        IRequestHandler<GetEnabledElectronSignSettingsQuery, List<GetEnabledElectronSignSettingsQueryResultItem>>
    {
        private readonly IRepository<ElectronSignSetting> rep = rep;
        /// <summary>
        /// 查询已启用的电子签配置
        /// </summary>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public Task<List<GetEnabledElectronSignSettingsQueryResultItem>> Handle(GetEnabledElectronSignSettingsQuery request, CancellationToken cancellationToken)
        {
            return rep.AsQueryable().AsNoTracking()
                .Where(it => !it.IsDisabled)
                .ProjectToType<GetEnabledElectronSignSettingsQueryResultItem>()
                .ToListAsync();
        }
    }
}
FlexJobApi.UserServer.Application/EnterpriseEmployees/Queries/EnterpriseEmployeeQueryHandler.cs
@@ -18,7 +18,8 @@
            IRepository<EnterpriseEmployee> rep
        ) :
        IRequestHandler<GetEnterpriseEmployeesQuery, GetEnterpriseEmployeesQueryResult>,
        IRequestHandler<GetEnterpriseEmployeeQuery, GetEnterpriseEmployeeQueryResult>
        IRequestHandler<GetEnterpriseEmployeeQuery, GetEnterpriseEmployeeQueryResult>,
        IRequestHandler<GetEnterpriseEmployeeElectronSignsQuery, GetEnterpriseEmployeeElectronSignsQueryResult>
    {
        private readonly IRepository<EnterpriseEmployee> rep = rep;
@@ -138,5 +139,36 @@
            return model;
        }
        /// <summary>
        /// 查询个人用户签约列表
        /// </summary>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task<GetEnterpriseEmployeeElectronSignsQueryResult> Handle(GetEnterpriseEmployeeElectronSignsQuery 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);
            }
            else
            {
                q = q.Where(it =>
                    it.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait
                    || it.UserSignContractStatus == EnumTaskUserSignContractStatus.Effect
                    || it.UserSignContractStatus == EnumTaskUserSignContractStatus.Stop);
            }
            var s = q.Select(it => new GetEnterpriseEmployeeElectronSignsQueryResultItem
            {
                Id = it.Id,
                EnterpriseName = it.Enterprise.EnterpriseName,
                UserSignContractStatus = it.UserSignContractStatus,
            });
            return await request.PageModel.GetPagedListAsync<GetEnterpriseEmployeeElectronSignsQueryResult, GetEnterpriseEmployeeElectronSignsQueryResultItem>(s, cancellationToken);
        }
    }
}
FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml
@@ -317,6 +317,24 @@
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.ElectronSignSettingQueryHandler">
            <summary>
            电子签配置查询处理器
            </summary>
        </member>
        <member name="M:FlexJobApi.UserServer.Application.ElectronSignSettingQueryHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.ElectronSignSetting})">
            <summary>
            电子签配置查询处理器
            </summary>
        </member>
        <member name="M:FlexJobApi.UserServer.Application.ElectronSignSettingQueryHandler.Handle(FlexJobApi.Core.GetEnabledElectronSignSettingsQuery,System.Threading.CancellationToken)">
            <summary>
            查询已启用的电子签配置
            </summary>
            <param name="request"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.PersonalUserRealQueryHandler">
            <summary>
            个人实名查询处理器
@@ -387,6 +405,14 @@
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="M:FlexJobApi.UserServer.Application.EnterpriseEmployeeQueryHandler.Handle(FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQuery,System.Threading.CancellationToken)">
            <summary>
            查询个人用户签约列表
            </summary>
            <param name="request"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.EnterpriseCommandHandler">
            <summary>
            企业命令处理器