54 lines
1.9 KiB
C#
54 lines
1.9 KiB
C#
using System.Collections.Generic;
|
||
using System.Threading.Tasks;
|
||
using _0_Framework.Domain;
|
||
using CompanyManagment.App.Contracts.ClassificationScheme;
|
||
|
||
namespace Company.Domain.ClassificationSchemeAgg;
|
||
|
||
public interface IClassificationGroupRepository : IRepository<long, ClassificationGroup>
|
||
{
|
||
/// <summary>
|
||
/// دریافت گروه ها و مشاغلشان برای تب تعیین مشاغل
|
||
/// </summary>
|
||
/// <param name="schemeId"></param>
|
||
/// <returns></returns>
|
||
Task<List<ClassificationGroupAndJobModel>> GetGroupAndJobs(long schemeId);
|
||
|
||
|
||
/// <summary>
|
||
/// دریافت مشاغل گروه توسط آی دی گروه
|
||
/// </summary>
|
||
/// <param name="groupId"></param>
|
||
/// <returns></returns>
|
||
Task<List<EditClassificationGroupJob>> GetGroupJobs(long groupId);
|
||
|
||
/// <summary>
|
||
/// چک میکند که آی پرسنلی وجود دارد که این شغل به او نسبت داده شده
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
/// <param name="groupId"></param>
|
||
/// <returns></returns>
|
||
Task<bool> CheckEmployeeHasThisJob(long id, long groupId);
|
||
|
||
/// <summary>
|
||
/// ایجاد مشاغل
|
||
/// </summary>
|
||
/// <param name="createClassificationGroupJob"></param>
|
||
/// <param name="deleteJobList"></param>
|
||
/// <returns></returns>
|
||
Task<bool> CreateJobs(List<ClassificationGroupJob> createClassificationGroupJob, List<long> deleteJobList);
|
||
|
||
|
||
/// <summary>
|
||
/// در یافت اطلاعات گروه برای لود مودال ایجاد دستمزد های
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
Task<SalaryAndRialCoefficientModel> GetGroupToCreateSalariesModal(long schemeId);
|
||
|
||
/// <summary>
|
||
/// ایجاد گروه های بیست گانه
|
||
/// </summary>
|
||
/// <param name="groupList"></param>
|
||
/// <returns></returns>
|
||
Task CreateGroups(List<ClassificationGroup> groupList);
|
||
} |