using AutoMapper; using OASystem.Domain.Dtos.PersonnelModule; using OASystem.Domain.Entities.PersonnelModule; using OASystem.Domain.ViewModels.PersonnelModule; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using SqlSugar; using Result = OASystem.Domain.Result; namespace OASystem.Infrastructure.Repositories.PersonnelModule { /// /// 人事模块 工资表 仓库 /// public class WageSheetRepository : BaseRepository { private readonly IMapper _mapper; private Result _result; public WageSheetRepository(SqlSugarClient sqlSugar, IMapper mapper) : base(sqlSugar) { _mapper = mapper; _result = new Result(); } /// /// 查询工资 List /// /// public async Task Get_WageSheet_ListByYearMonthAsync(string yearMonth ) { if (string.IsNullOrEmpty(yearMonth)) { _result.Msg = "参数为空"; return _result; } string sql = string.Format(@"Select sys_u1.CnName Name,sys_u2.CnName LastUpdateUserName,pm_ws.Id, pm_ws.YearMonth,pm_ws.StartDate,pm_ws.EndDate,pm_ws.UserId,pm_ws.Should, pm_ws.TotalDeductions,pm_ws.TotalRealHair,pm_ws.WithholdingTax,pm_ws.AfterTax From Pm_WageSheet pm_ws Left Join Sys_Users sys_u1 On pm_ws.UserId = sys_u1.Id Left Join Sys_Users sys_u2 On pm_ws.LastUpdateUserId = sys_u2.Id Where pm_ws.IsDel = 0 And pm_ws.YearMonth = '{0}'", yearMonth); var wageSheetList = await _sqlSugar.SqlQueryable(sql).ToListAsync(); if (wageSheetList.Count <= 0 ) { _result.Msg = "暂无数据!"; return _result; } _result.Code = 0; _result.Msg = "查询成功!"; _result.Data = wageSheetList; return _result; } /// /// 查询工资 Info /// /// public async Task Get_WageSheet_InfoByIdAsync(int id) { string sql = string.Format(@"Select sys_u1.CnName Name,sys_u2.CnName LastUpdateUserName,pm_ws.* From Pm_WageSheet pm_ws Left Join Sys_Users sys_u1 On pm_ws.UserId = sys_u1.Id Left Join Sys_Users sys_u2 On pm_ws.LastUpdateUserId = sys_u2.Id Where pm_ws.IsDel = 0 And pm_ws.Id = {0}", id); var wageSheetInfo = await _sqlSugar.SqlQueryable(sql).ToListAsync(); _result.Code = 0; _result.Msg = "查询成功!"; _result.Data = wageSheetInfo; return _result; } /// /// 修改 /// /// public async Task Post_WageSheet_AddOrEditAsync(WageAddOrEditDto dto) { Pm_WageSheet pm_WageSheet = new Pm_WageSheet(); pm_WageSheet = _mapper.Map(dto); pm_WageSheet.LastUpdateUserId = dto.CreateUserId; if (dto.Status == 1) //添加 { int add = await _sqlSugar.Insertable(pm_WageSheet).ExecuteReturnIdentityAsync(); if (add <= 0) { _result.Msg = "操作失败!"; return _result; } } else if(dto.Status == 2) //修改 { int update = await _sqlSugar.Updateable(pm_WageSheet) .IgnoreColumns(it => new { it.CreateUserId, it.CreateTime,it.DeleteUserId,it.DeleteTime }) .WhereColumns(it => new { it.Id }) .ExecuteCommandAsync(); if (update <= 0) { _result.Msg = "操作失败!"; return _result; } } else{ _result.Msg = "请输入操作状态!1 添加 2 修改"; } _result.Code = 0; _result.Msg = "操作成功!"; return _result; } } }