using AutoMapper;
|
using HStation.Dto;
|
using Yw.Dto;
|
|
namespace HStation.BLL
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public class EmployeeMain
|
{
|
private readonly HStation.CAL.IEmployeeMain _cal = CALCreateHelper.CreateCAL<HStation.CAL.IEmployeeMain>();
|
|
#region Query
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<List<Vmo.EmployeeMain>> GetAll()
|
{
|
var dtolist = await _cal.GetAll();
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Dto.EmployeeMainDto, Vmo.EmployeeMain>()
|
.ForMember(d => d.EmployeeID, opt => opt.MapFrom(src => src.ID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var vmoList = mapper.Map<List<Dto.EmployeeMainDto>, List<Vmo.EmployeeMain>>(dtolist);
|
return vmoList;
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<Vmo.EmployeeMain> GetByID(long ID)
|
{
|
var dto = await _cal.GetByID(ID);
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Dto.EmployeeMainDto, Vmo.EmployeeMain>()
|
.ForMember(d => d.EmployeeID, opt => opt.MapFrom(src => src.ID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var vmo = mapper.Map<Dto.EmployeeMainDto, Vmo.EmployeeMain>(dto);
|
return vmo;
|
}
|
|
public async Task<Vmo.EmployeeMain> GetByErpCode(String ErpCode)
|
{
|
var dto = await _cal.GetByErpCode(ErpCode);
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Dto.EmployeeMainDto, Vmo.EmployeeMain>()
|
.ForMember(d => d.EmployeeID, opt => opt.MapFrom(src => src.ID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var vmo = mapper.Map<Dto.EmployeeMainDto, Vmo.EmployeeMain>(dto);
|
return vmo;
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<List<Vmo.EmployeeMain>> GetByIds(List<long> Ids)
|
{
|
var dtolist = await _cal.GetByIds(Ids);
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Dto.EmployeeMainDto, Vmo.EmployeeMain>()
|
.ForMember(d => d.EmployeeID, opt => opt.MapFrom(src => src.ID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var vmoList = mapper.Map<List<Dto.EmployeeMainDto>, List<Vmo.EmployeeMain>>(dtolist);
|
return vmoList;
|
}
|
|
#endregion Query
|
|
#region Insert
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<long> Insert(Vmo.EmployeeMain vmo)
|
{
|
if (vmo == null)
|
return 0;
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Dto.EmployeeMainDto, Vmo.EmployeeMain>()
|
.ForMember(d => d.EmployeeID, opt => opt.MapFrom(src => src.ID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var dto = mapper.Map<Vmo.EmployeeMain, AddEmployeeMainInput>(vmo);
|
return await _cal.Insert(dto);
|
}
|
|
/// <summary>
|
/// 插入员工拓展
|
/// </summary>
|
public async Task<EmployeeAndLoginID> InsertEx(Vmo.EmployeeMain vmo)
|
{
|
if (vmo == null)
|
return null;
|
if (string.IsNullOrEmpty(vmo.ErpCode))
|
return null;
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Vmo.EmployeeMain, AddEmployeeMainInput>()
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var dto = mapper.Map<Vmo.EmployeeMain, AddEmployeeMainInput>(vmo);
|
var IDList = new EmployeeAndLoginID();
|
var result = await _cal.Insert(dto);
|
if (result > 0)
|
{
|
IDList.EmployeeID = result;
|
if (vmo.User != null)
|
{
|
var userbll = new Yw.BLL.User();
|
try
|
{
|
var userid = await userbll.Insert(vmo.User);
|
if (userid > 0)
|
{
|
IDList.LoginID = userid;
|
}
|
|
return IDList;
|
}
|
catch (Exception ex)
|
{
|
return null;
|
}
|
}
|
else
|
{
|
return IDList;
|
}
|
}
|
return null;
|
}
|
|
#endregion Insert
|
|
#region Update
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> Update(Vmo.EmployeeMain vmo)
|
{
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Vmo.EmployeeMain, UpdateEmployeeMainDto>()
|
.ForMember(d => d.ID, opt => opt.MapFrom(src => src.EmployeeID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var dto = mapper.Map<Vmo.EmployeeMain, UpdateEmployeeMainDto>(vmo);
|
return await _cal.Update(dto);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> Updates(List<Vmo.EmployeeMain> vmolist)
|
{
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Vmo.EmployeeMain, UpdateEmployeeMainDto>()
|
.ForMember(d => d.ID, opt => opt.MapFrom(src => src.EmployeeID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var dtoList = mapper.Map<List<Vmo.EmployeeMain>, List<UpdateEmployeeMainDto>>(vmolist);
|
return await _cal.Updates(dtoList);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> BulkUpdates(List<Vmo.EmployeeMain> vmolist)
|
{
|
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<Vmo.EmployeeMain, UpdateEmployeeMainDto>()
|
.ForMember(d => d.ID, opt => opt.MapFrom(src => src.EmployeeID))
|
.ForMember(d => d.StaffStatus, opt => opt.MapFrom(src => src.StaffStatus))
|
).CreateMapper();
|
var dtoList = mapper.Map<List<Vmo.EmployeeMain>, List<UpdateEmployeeMainDto>>(vmolist);
|
return await _cal.BulkUpdates(dtoList);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> UpdateSortCode(long ID, int SortCode)
|
{
|
return await _cal.UpdateSortCode(ID, SortCode);
|
}
|
|
public async Task<bool> UpdateSorter(List<UpdateSortCodeInput> Sorters)
|
{
|
return await _cal.UpdateSorter(Sorters);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public Task<bool> UpdateParas(long ID, Dictionary<string, string> Paras)
|
{
|
return _cal.UpdateParas(ID, Paras);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public Task<bool> UpdateFlags(long ID, List<string> Flags)
|
{
|
return _cal.UpdateFlags(ID, Flags);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public Task<bool> UpdateTagName(long ID, string TagName)
|
{
|
return _cal.UpdateTagName(ID, TagName);
|
}
|
|
#endregion Update
|
|
#region Delete
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> DeleteByID(long ID)
|
{
|
return await _cal.DeleteByID(ID);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> DeleteByIds(List<long> Ids)
|
{
|
return await _cal.DeleteByIds(Ids);
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public async Task<bool> DeleteAll()
|
{
|
return await _cal.DeleteAll();
|
}
|
|
#endregion Delete
|
}
|
}
|