65 lines
2.4 KiB
C#
65 lines
2.4 KiB
C#
using System.Diagnostics;
|
|
using AccountMangement.Infrastructure.EFCore;
|
|
using CompanyManagment.App.Contracts.AdminMonthlyOverview;
|
|
using CompanyManagment.EFCore;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using ServiceHost.Areas.AdminNew.Pages.Company.RollCall;
|
|
|
|
namespace ServiceHost.Test;
|
|
|
|
public class Tester
|
|
{
|
|
private readonly IAdminMonthlyOverviewApplication _adminMonthlyOverviewApplication;
|
|
private readonly CompanyContext _companyContext;
|
|
private readonly AccountContext _accountContext;
|
|
public Tester(IAdminMonthlyOverviewApplication adminMonthlyOverviewApplication, CompanyContext companyContext, AccountContext accountContext)
|
|
{
|
|
_adminMonthlyOverviewApplication = adminMonthlyOverviewApplication;
|
|
_companyContext = companyContext;
|
|
_accountContext = accountContext;
|
|
}
|
|
|
|
public async Task Test()
|
|
{
|
|
|
|
// await AdminMonthlyOverviewTest();
|
|
//await MoveTasksToAnotherPerson(423, 434);
|
|
|
|
}
|
|
|
|
public async Task MoveTasksToAnotherPerson(long oldAccount, long newAccount)
|
|
{
|
|
var receivedTasks = await _accountContext.Assigns.Include(x => x.Task)
|
|
.Include(x => x.TaskMessageList)
|
|
.ThenInclude(x => x.TaskMessageItemsList).Where(x => x.AssignedId == oldAccount && !x.IsDone && !x.IsCancel).ToListAsync();
|
|
foreach (var receivedTaskAssign in receivedTasks)
|
|
{
|
|
receivedTaskAssign.ChangeAssignedId(newAccount);
|
|
}
|
|
|
|
await _accountContext.SaveChangesAsync();
|
|
|
|
var senderTasks = await _accountContext.Tasks.Include(x=>x.Assigns)
|
|
.ThenInclude(x => x.TaskMessageList)
|
|
.ThenInclude(x => x.TaskMessageItemsList).Where(x => x.SenderId == oldAccount && x.Assigns.Any(a=>!a.IsDone && !a.IsCancel) ).ToListAsync();
|
|
foreach (var task in senderTasks)
|
|
{
|
|
task.ChangeSender(newAccount);
|
|
}
|
|
await _accountContext.SaveChangesAsync();
|
|
}
|
|
private async Task AdminMonthlyOverviewTest()
|
|
{
|
|
var acc = _companyContext.WorkshopAccounts.FirstOrDefault(x => x.AccountId == 322);
|
|
var searchModel = new AdminMonthlyOverviewSearchModel()
|
|
{
|
|
Year = 1403,
|
|
Month = 12,
|
|
AdminAccountId = 322
|
|
};
|
|
var stopwatch = new Stopwatch();
|
|
stopwatch.Start();
|
|
var workshopsStatus = await _adminMonthlyOverviewApplication.GetWorkshopListByStatus(searchModel);
|
|
Console.WriteLine(stopwatch.Elapsed);
|
|
}
|
|
} |