diff --git a/CompanyManagment.Application/BoardApplication.cs b/CompanyManagment.Application/BoardApplication.cs index 336cc691..3b96814f 100644 --- a/CompanyManagment.Application/BoardApplication.cs +++ b/CompanyManagment.Application/BoardApplication.cs @@ -22,10 +22,11 @@ public class BoardApplication : IBoardApplication var disputeResolutionPetitionDate = new DateTime(); - disputeResolutionPetitionDate = command.DisputeResolutionPetitionDate.ToGeorgianDateTime(); - //TODO if - //if(_BoardRepository.Exists(x=>x.Branch == command.Branch)) - // operation.Failed("fail message") + if (!command.DisputeResolutionPetitionDate.TryToGeorgianDateTime(out disputeResolutionPetitionDate)) + { + disputeResolutionPetitionDate = new DateTime(); + } + var board = new Board(disputeResolutionPetitionDate, command.Branch, command.BoardChairman, command.ExpertReport,command.File_Id, command.BoardType_Id); @@ -41,7 +42,11 @@ public class BoardApplication : IBoardApplication var board = _boardRepository.Get(command.Id); var disputeResolutionPetitionDate = new DateTime(); - disputeResolutionPetitionDate = command.DisputeResolutionPetitionDate.ToGeorgianDateTime(); + + if (!command.DisputeResolutionPetitionDate.TryToGeorgianDateTime(out disputeResolutionPetitionDate)) + { + disputeResolutionPetitionDate = new DateTime(); + } //TODO //if(_BoardRepository.Exists(x=>x.Branch == command.Branch)) diff --git a/CompanyManagment.Application/FileAlertApplication.cs b/CompanyManagment.Application/FileAlertApplication.cs index 58eb3c65..0e3c2e5d 100644 --- a/CompanyManagment.Application/FileAlertApplication.cs +++ b/CompanyManagment.Application/FileAlertApplication.cs @@ -84,6 +84,7 @@ public class FileAlertApplication : IFileAlertApplication foreach (var item in files) { var file = _fileApplication.GetFileDetails(item); + Console.WriteLine(file.Id); file.State = _fileStateApplication.GetFileState(file); if (file.State == 0) diff --git a/CompanyManagment.Application/ProceedingSessionApplication.cs b/CompanyManagment.Application/ProceedingSessionApplication.cs index 449b1c61..fa125627 100644 --- a/CompanyManagment.Application/ProceedingSessionApplication.cs +++ b/CompanyManagment.Application/ProceedingSessionApplication.cs @@ -43,15 +43,19 @@ public class ProceedingSessionApplication : IProceedingSessionApplication if (String.IsNullOrWhiteSpace(command.Date) || String.IsNullOrWhiteSpace(command.Time)) return operation.Failed("تاریخ و زمان رسیدگی الزامی است"); - + var Date = new DateTime(); if (!command.Date.TryToGeorgianDateTime(out Date)) { - operation.Failed("تاریخ ") + return operation.Failed("تاریخ جلسه وارد شده نامعتبر است "); + } + + if (!TimeOnly.TryParse(command.Time, out _)) + { + return operation.Failed("ساعت جلسه وارد شده نامعتبر است"); } - var proSession = new ProceedingSession(Date, command.Time, command.Board_Id); _proceedingSessionRepository.Create(proSession); @@ -100,8 +104,8 @@ public class ProceedingSessionApplication : IProceedingSessionApplication public void RemoveProceedingSessions(long boardId) { - var searchModel = new ProceedingSessionSearchModel { Board_Id = boardId }; - + var searchModel = new ProceedingSessionSearchModel { Board_Id = boardId }; + var objects = Search(searchModel); _proceedingSessionRepository.RemoveProceedingSessions(objects); @@ -120,10 +124,10 @@ public class ProceedingSessionApplication : IProceedingSessionApplication List PSinDay = null; var viewModels = new List(); - - searchModel.FromDate = CreateFrom_ToDate(searchModel)[0]; - searchModel.ToDate = CreateFrom_ToDate(searchModel)[1]; + + //searchModel.FromDate = CreateFrom_ToDate(searchModel)[0]; + //searchModel.ToDate = CreateFrom_ToDate(searchModel)[1]; var proseedingSessions = Search(searchModel) .OrderBy(x => x.Date) @@ -131,8 +135,8 @@ public class ProceedingSessionApplication : IProceedingSessionApplication .GroupBy(x => x.Date) .ToList(); - var files = _fileApplication.Search(new FileSearchModel - { + var files = _fileApplication.Search(new FileSearchModel + { ArchiveNo = searchModel.File.ArchiveNo.ToString(), FileClass = searchModel.File.FileClass, UserId_RequesterOrSummoned = searchModel.UserId_RequesterOrSummoned, @@ -157,7 +161,7 @@ public class ProceedingSessionApplication : IProceedingSessionApplication return viewModels; } - + //var days = Tools.GetDaysBetweenDateGeorgian(proseedingSessions.FirstOrDefault().Date.ToGeorgianDateTime(), proseedingSessions.LastOrDefault().Date.ToGeorgianDateTime()); //var days = Tools.GetDaysBetweenDateGeorgian(proseedingSessions.FirstOrDefault(), proseedingSessions.LastOrDefault()); @@ -165,7 +169,7 @@ public class ProceedingSessionApplication : IProceedingSessionApplication //proseedingSessions.Add(new IGrouping("14124312", new EditProceedingSession())); - + var i = 0; @@ -179,7 +183,11 @@ public class ProceedingSessionApplication : IProceedingSessionApplication i++; } - var days = Tools.GetDaysBetweenDateGeorgian(startDate.ToGeorgianDateTime(), endDate.ToGeorgianDateTime()); + List days = []; + if (!string.IsNullOrWhiteSpace(startDate) && !string.IsNullOrWhiteSpace(endDate)) + { + days = Tools.GetDaysBetweenDateGeorgian(startDate.ToGeorgianDateTime(), endDate.ToGeorgianDateTime()); + } //foreach (var item in new List(viewModels)) //{ @@ -235,13 +243,13 @@ public class ProceedingSessionApplication : IProceedingSessionApplication var file_PSList = new List(); foreach (var item in list) - { + { var board = _boardApplication.GetDetails(item.Board_Id); if (searchModel.Board.BoardType_Id != 0 && board.BoardType_Id != searchModel.Board.BoardType_Id) continue; - if(searchModel.Board.BoardChairman != null) + if (searchModel.Board.BoardChairman != null) { if (board.BoardChairman == null) continue; @@ -325,7 +333,7 @@ public class ProceedingSessionApplication : IProceedingSessionApplication { var pastProceedingSessions = _proceedingSessionRepository.Search(new ProceedingSessionSearchModel { Status = 1, ToDate = DateTime.Today.AddDays(-1).ToFarsi() }); - foreach(var PS in pastProceedingSessions) + foreach (var PS in pastProceedingSessions) { var proceedingSession = _proceedingSessionRepository.Get(PS.Id); proceedingSession.Edit(PS.Date.ToGeorgianDateTime(), PS.Time, PS.Board_Id, 2); diff --git a/CompanyManagment.EFCore/Repository/ProceedingSessionRepository.cs b/CompanyManagment.EFCore/Repository/ProceedingSessionRepository.cs index e7601c86..b8bbed2c 100644 --- a/CompanyManagment.EFCore/Repository/ProceedingSessionRepository.cs +++ b/CompanyManagment.EFCore/Repository/ProceedingSessionRepository.cs @@ -29,7 +29,7 @@ public class ProceedingSessionRepository : RepositoryBase Search(ProceedingSessionSearchModel searchModel) { - var query = _context.ProceedingSessions.Select(x => new + var query = _context.ProceedingSessions.Select(x => new { Id = x.id, Date = x.Date, @@ -40,22 +40,22 @@ public class ProceedingSessionRepository : RepositoryBase x.Id == searchModel.Id); } - - if(searchModel.Board_Id != 0) + + if (searchModel.Board_Id != 0) { query = query.Where(x => x.Board_Id == searchModel.Board_Id); } - - if(searchModel.Status != 0) + + if (searchModel.Status != 0) { query = query.Where(x => x.Status == searchModel.Status); } - if(!string.IsNullOrEmpty(searchModel.FromDate)) + if (!string.IsNullOrEmpty(searchModel.FromDate)) { query = query.Where(x => x.Date >= searchModel.FromDate.ToGeorgianDateTime()); } @@ -64,13 +64,26 @@ public class ProceedingSessionRepository : RepositoryBase x.Date <= searchModel.ToDate.ToGeorgianDateTime()); } - + if (!string.IsNullOrEmpty(searchModel.Time)) { query = query.Where(x => x.Time == searchModel.Time); } - return query.Select(x => new EditProceedingSession { + if (searchModel.Year != 0 && searchModel.Month != 0) + { + var start = $"{searchModel.Year:0000}/{searchModel.Month:00}/01"; + var end = start.FindeEndOfMonth(); + + + var startGr = start.ToGeorgianDateTime(); + var endGr = end.ToGeorgianDateTime(); + + query = query.Where(x => x.Date >= startGr && x.Date <= endGr); + } + + return query.Select(x => new EditProceedingSession + { Id = x.Id, Date = x.Date.ToFarsi(), Time = x.Time, diff --git a/ServiceHost/Areas/Admin/Pages/Company/FilePage/Index.cshtml.cs b/ServiceHost/Areas/Admin/Pages/Company/FilePage/Index.cshtml.cs index c6f0db31..f665b16c 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/FilePage/Index.cshtml.cs +++ b/ServiceHost/Areas/Admin/Pages/Company/FilePage/Index.cshtml.cs @@ -1,4 +1,5 @@ -using _0_Framework.Application; +using System.Transactions; +using _0_Framework.Application; using CompanyManagement.Infrastructure.Excel.CaseManagement; using CompanyManagment.App.Contracts.Board; using CompanyManagment.App.Contracts.Contact2; @@ -14,6 +15,7 @@ using CompanyManagment.App.Contracts.PenaltyTitle; using CompanyManagment.App.Contracts.Petition; using CompanyManagment.App.Contracts.ProceedingSession; using CompanyManagment.App.Contracts.WorkHistory; +using IPE.SmsIrClient.Models.Results; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.RazorPages; using ArchiveNo_FileClass_UserIdList = CompanyManagment.App.Contracts.File1.ArchiveNo_FileClass_UserIdList; @@ -24,633 +26,630 @@ namespace ServiceHost.Areas.Admin.Pages.Company.FilePage; public class IndexModel : PageModel { - private readonly IBoardApplication _boardApplication; - private readonly IContactApplication2 _contactApplication; - private readonly IEvidenceApplication _evidenceApplication; - private readonly IEvidenceDetailApplication _evidenceDetailApplication; + private readonly IBoardApplication _boardApplication; + private readonly IContactApplication2 _contactApplication; + private readonly IEvidenceApplication _evidenceApplication; + private readonly IEvidenceDetailApplication _evidenceDetailApplication; - private readonly IFileApplication _fileApplication; - private readonly IFileTimingApplication _fileTimingApplication; - private readonly IFileTitleApplication _fileTitleApplication; - private readonly IMasterPenaltyTitleApplication _masterPenaltyTitleApplication; - private readonly IMasterPetitionApplication _masterPetitionApplication; - private readonly IMasterWorkHistoryApplication _masterWorkHistoryApplication; - private readonly IPenaltyTitleApplication _penaltyTitleApplication; - private readonly IPetitionApplication _petitionApplication; - private readonly IProceedingSessionApplication _proceedingSessionApplication; - private readonly IWorkHistoryApplication _workHistoryApplication; - public FileSearchModel fileSearchModel; - public List viewModels; + private readonly IFileApplication _fileApplication; + private readonly IFileTimingApplication _fileTimingApplication; + private readonly IFileTitleApplication _fileTitleApplication; + private readonly IMasterPenaltyTitleApplication _masterPenaltyTitleApplication; + private readonly IMasterPetitionApplication _masterPetitionApplication; + private readonly IMasterWorkHistoryApplication _masterWorkHistoryApplication; + private readonly IPenaltyTitleApplication _penaltyTitleApplication; + private readonly IPetitionApplication _petitionApplication; + private readonly IProceedingSessionApplication _proceedingSessionApplication; + private readonly IWorkHistoryApplication _workHistoryApplication; + public FileSearchModel fileSearchModel; + public List viewModels; - public IndexModel( - IFileApplication fileApplication, - IBoardApplication boardApplication, - IPetitionApplication petitionApplication, - IWorkHistoryApplication workHistoryApplication, - IPenaltyTitleApplication penaltyTitleApplication, - IProceedingSessionApplication proceedingSessionApplication, - IMasterPetitionApplication masterPetitionApplication, - IMasterWorkHistoryApplication masterWorkHistoryApplication, - IMasterPenaltyTitleApplication masterPenaltyTitleApplication, - IEvidenceApplication evidenceApplication, - IEvidenceDetailApplication evidenceDetailApplication, - IFileTitleApplication fileTitleApplication, - IFileTimingApplication fileTimingApplication, - IContactApplication2 contactApplication - ) - { - _fileApplication = fileApplication; - _boardApplication = boardApplication; - _petitionApplication = petitionApplication; - _workHistoryApplication = workHistoryApplication; - _penaltyTitleApplication = penaltyTitleApplication; - _proceedingSessionApplication = proceedingSessionApplication; - _masterPetitionApplication = masterPetitionApplication; - _masterWorkHistoryApplication = masterWorkHistoryApplication; - _masterPenaltyTitleApplication = masterPenaltyTitleApplication; - _evidenceApplication = evidenceApplication; - _evidenceDetailApplication = evidenceDetailApplication; - _fileTitleApplication = fileTitleApplication; - _fileTimingApplication = fileTimingApplication; - _contactApplication = contactApplication; - } + public IndexModel( + IFileApplication fileApplication, + IBoardApplication boardApplication, + IPetitionApplication petitionApplication, + IWorkHistoryApplication workHistoryApplication, + IPenaltyTitleApplication penaltyTitleApplication, + IProceedingSessionApplication proceedingSessionApplication, + IMasterPetitionApplication masterPetitionApplication, + IMasterWorkHistoryApplication masterWorkHistoryApplication, + IMasterPenaltyTitleApplication masterPenaltyTitleApplication, + IEvidenceApplication evidenceApplication, + IEvidenceDetailApplication evidenceDetailApplication, + IFileTitleApplication fileTitleApplication, + IFileTimingApplication fileTimingApplication, + IContactApplication2 contactApplication + ) + { + _fileApplication = fileApplication; + _boardApplication = boardApplication; + _petitionApplication = petitionApplication; + _workHistoryApplication = workHistoryApplication; + _penaltyTitleApplication = penaltyTitleApplication; + _proceedingSessionApplication = proceedingSessionApplication; + _masterPetitionApplication = masterPetitionApplication; + _masterWorkHistoryApplication = masterWorkHistoryApplication; + _masterPenaltyTitleApplication = masterPenaltyTitleApplication; + _evidenceApplication = evidenceApplication; + _evidenceDetailApplication = evidenceDetailApplication; + _fileTitleApplication = fileTitleApplication; + _fileTimingApplication = fileTimingApplication; + _contactApplication = contactApplication; + } - public void OnGet(FileSearchModel fileSearchModel) - { - var files = new List(); + public void OnGet(FileSearchModel fileSearchModel) + { + var files = new List(); - if (fileSearchModel.diagnosisBoard == null) - fileSearchModel.diagnosisBoard = new BoardSearchModel(); + if (fileSearchModel.diagnosisBoard == null) + fileSearchModel.diagnosisBoard = new BoardSearchModel(); - if (fileSearchModel.diagnosisProceedingSession == null) - fileSearchModel.diagnosisProceedingSession = new ProceedingSessionSearchModel(); + if (fileSearchModel.diagnosisProceedingSession == null) + fileSearchModel.diagnosisProceedingSession = new ProceedingSessionSearchModel(); - if (fileSearchModel.disputeResolutionBoard == null) - fileSearchModel.disputeResolutionBoard = new BoardSearchModel(); + if (fileSearchModel.disputeResolutionBoard == null) + fileSearchModel.disputeResolutionBoard = new BoardSearchModel(); - if (fileSearchModel.disputeResolutionProceedingSession == null) - fileSearchModel.disputeResolutionProceedingSession = - new ProceedingSessionSearchModel(); + if (fileSearchModel.disputeResolutionProceedingSession == null) + fileSearchModel.disputeResolutionProceedingSession = + new ProceedingSessionSearchModel(); - var allFiles = _fileApplication.Search(new FileSearchModel()); + var allFiles = _fileApplication.Search(new FileSearchModel()); - if (this.fileSearchModel == null) - { - this.fileSearchModel = new FileSearchModel - { - ArchiveNo_FileClass_UserIdList = allFiles.Select(x => new ArchiveNo_FileClass_UserIdList - { - ArchiveNo = x.ArchiveNo.ToString(), + if (this.fileSearchModel == null) + { + this.fileSearchModel = new FileSearchModel + { + ArchiveNo_FileClass_UserIdList = allFiles.Select(x => new ArchiveNo_FileClass_UserIdList + { + ArchiveNo = x.ArchiveNo.ToString(), FileClass = x.FileClass, - UserId = x.Client == 1 ? x.Reqester : x.Summoned - }).ToList(), - UsersList = _fileApplication.GetAllEmploees().Select(x => new Users - { Id = x.Id, FullName = x.EmployeeFullName, RequesterOrSummoned = 1 }).ToList() - }; - - this.fileSearchModel.UsersList.AddRange(_fileApplication.GetAllEmployers() - .Select(x => new Users { Id = x.Id, FullName = x.FullName, RequesterOrSummoned = 2 }).ToList()); - } - else - { - this.fileSearchModel.ArchiveNo_FileClass_UserIdList = allFiles.Select(x => - new ArchiveNo_FileClass_UserIdList - { - ArchiveNo = x.ArchiveNo.ToString(), FileClass = x.FileClass, - UserId = x.Client == 1 ? x.Reqester : x.Summoned - }).ToList(); - this.fileSearchModel.UsersList = _fileApplication.GetAllEmploees().Select(x => - new Users { Id = x.Id, FullName = x.EmployeeFullName, RequesterOrSummoned = 1 }).ToList(); - this.fileSearchModel.UsersList.AddRange(_fileApplication.GetAllEmployers() - .Select(x => new Users { Id = x.Id, FullName = x.FullName, RequesterOrSummoned = 2 }).ToList()); - } - - if (!fileSearchModel.IsSearch) - files = _fileApplication.Search(fileSearchModel).Take(50).ToList(); - else - files = _fileApplication.Search(fileSearchModel).ToList(); - - files.ForEach(f => f.ReqesterFullname = _fileApplication.GetEmployeeFullNameById(f.Reqester)); - files.ForEach(f => f.SummonedFullname = _fileApplication.GetEmployerFullNameById(f.Summoned)); - - viewModels = files; - - var i = 0; - foreach (var file in files.ToList()) - { - var tempViewModel = new FileViewModel(); - tempViewModel = _fileApplication.GetFileDetails(file); - - if (fileSearchModel.IsSearch) - { - if (_fileApplication.FilterFileDetails(tempViewModel, fileSearchModel)) - { - viewModels[i] = tempViewModel; - i++; - } - else - { - viewModels.RemoveAt(i); - } - } - } - } - - public IActionResult OnGetCreateFile() - { - var archiveNo = _fileApplication.FindLastArchiveNumber(); - - var createFile = new CreateFile - { - ArchiveNo = archiveNo + 1, - Employees = _fileApplication.GetAllEmploees(false), - Employers = _fileApplication.GetAllEmployers(false), - Contacts = _contactApplication.GetAllContact() - }; - - - return Partial("./CreateFile", createFile); - } - - public IActionResult OnPostCreateFile(CreateFile command) - { - var result = _fileApplication.Create(command); - - return new JsonResult(result); - } - - public IActionResult OnGetEditFile(long id = -1) - { - if (id == -1) - { - var file = _fileApplication.Search(new FileSearchModel()).FirstOrDefault(); - if (file != null) id = file.Id; - } - - var editFile = _fileApplication.GetDetails(id); - var diagnosisBoard = - _boardApplication.GetDetails(editFile.Id, 1) - ?? new EditBoard { File_Id = editFile.Id, BoardType_Id = 1 }; - - var diagnosisPS = new List { new() }; - if (diagnosisBoard.Id != 0) - { - var PsSearchModel = new ProceedingSessionSearchModel { Board_Id = diagnosisBoard.Id, Status = 0 }; - diagnosisPS = _proceedingSessionApplication.Search(PsSearchModel); - - if (diagnosisPS.Count == 0) - diagnosisPS.Add(new EditProceedingSession()); - } - //diagnosisPS = - // diagnosisPS.Count != 0 - // ? diagnosisPS - // : new List { new EditProceedingSession() }; - - var diagnosisPetition = _petitionApplication.GetDetails(editFile.Id, 1); - - var disputeResolutionBoard = - _boardApplication.GetDetails(editFile.Id, 2) - ?? new EditBoard { File_Id = editFile.Id, BoardType_Id = 2 }; - - var disputeResolutionPS = new List { new() }; - if (disputeResolutionBoard.Id != 0) - { - var PsSearchModel = new ProceedingSessionSearchModel { Board_Id = disputeResolutionBoard.Id }; - disputeResolutionPS = _proceedingSessionApplication.Search(PsSearchModel); - - if (disputeResolutionPS.Count == 0) - disputeResolutionPS.Add(new EditProceedingSession()); - } - //disputeResolutionPS = - // disputeResolutionPS.Count != 0 - // ? disputeResolutionPS - // : new List { new EditProceedingSession() }; - - var disputeResolutionPetition = _petitionApplication.GetDetails(editFile.Id, 2); - - editFile.createDiagnosisBoard = diagnosisBoard; - editFile.createDiagnosisPS = diagnosisPS; - editFile.createDiagnosisPetition = diagnosisPetition; - - editFile.createDisputeResolutionBoard = disputeResolutionBoard; - editFile.createDisputeResolutionPS = disputeResolutionPS; - editFile.createDisputeResolutionPetition = disputeResolutionPetition; - editFile.Employees = _fileApplication.GetAllEmploees(); - editFile.Employers = _fileApplication.GetAllEmployers(); - - return Partial("Edit", editFile); - } - - public IActionResult OnPostEditFile(EditFile command) - { - var result = _fileApplication.Edit(command); - - if (!result.IsSuccedded) - return new JsonResult(result); - - if ( - command.createDiagnosisBoard.BoardChairman != null - || command.createDiagnosisBoard.Branch != null - || command.createDiagnosisBoard.DisputeResolutionPetitionDate != null - || command.createDiagnosisBoard.ExpertReport != null - ) - { - if (command.createDiagnosisBoard.Id == 0) - result = _boardApplication.Create(command.createDiagnosisBoard); - else - result = _boardApplication.Edit(command.createDiagnosisBoard); - - if (!result.IsSuccedded) - return new JsonResult(result); - - if (command.createDiagnosisPS != null) - result = _proceedingSessionApplication.CreateProceedingSessions( - command.createDiagnosisPS, - result.SendId - ); - - if (!result.IsSuccedded) - return new JsonResult(result); - } - - if ( - command.createDisputeResolutionBoard.BoardChairman != null - || command.createDisputeResolutionBoard.Branch != null - || command.createDisputeResolutionBoard.DisputeResolutionPetitionDate != null - || command.createDisputeResolutionBoard.ExpertReport != null - ) - { - if (command.createDisputeResolutionBoard.Id == 0) - result = _boardApplication.Create(command.createDisputeResolutionBoard); - else - result = _boardApplication.Edit(command.createDisputeResolutionBoard); - - if (!result.IsSuccedded) - return new JsonResult(result); - - if (command.createDisputeResolutionPS != null) - result = _proceedingSessionApplication.CreateProceedingSessions( - command.createDisputeResolutionPS, - result.SendId - ); - - if (!result.IsSuccedded) - return new JsonResult(result); - } - - return new JsonResult(result); - } - - public IActionResult OnGetCreateOrEditPetition(long fileId, int boardTypeId) - { - var file = _fileApplication.GetDetails(fileId); - - var petition = _petitionApplication.GetDetails(fileId, boardTypeId) ?? new EditPetition(); - var workHistories = _workHistoryApplication.Search(petition.Id); - workHistories = - workHistories.Count != 0 - ? workHistories - : new List { new() }; - - var PenaltyTitles = _penaltyTitleApplication.Search(petition.Id); - PenaltyTitles = - PenaltyTitles.Count != 0 - ? PenaltyTitles - : new List { new() }; - - petition.File_Id = fileId; - petition.BoardType_Id = boardTypeId; - petition.FileData = file; - petition.CreateWorkHistory = workHistories; - petition.CreatePenaltyTitle = PenaltyTitles; - - return Partial("./CreateOrEditPetition", petition); - } - - public IActionResult OnPostCreateOrEditPetition(EditPetition command) - { - var petitionResult = new OperationResult(); - - if (command.Id == 0) - petitionResult = _petitionApplication.Create(command); - else - petitionResult = _petitionApplication.Edit(command); - - if (!petitionResult.IsSuccedded) - return new JsonResult(petitionResult); - - var workResult = _workHistoryApplication.CreateWorkHistories( - command.CreateWorkHistory, - petitionResult.SendId - ); - - if (!workResult.IsSuccedded) - return new JsonResult(workResult); - - var penaltyResult = _penaltyTitleApplication.CreatePenaltyTitles( - command.CreatePenaltyTitle, - petitionResult.SendId - ); - - if (!penaltyResult.IsSuccedded) - return new JsonResult(penaltyResult); - - return new JsonResult(penaltyResult); - } - - public IActionResult OnGetCreateOrEditMasterPetition(long fileId, int boardTypeId) - { - var file = _fileApplication.GetDetails(fileId); - - var masterPetition = _masterPetitionApplication.GetDetails(fileId, boardTypeId) ?? new EditMasterPetition(); - var workHistories = _masterWorkHistoryApplication.Search(masterPetition.Id); - workHistories = - workHistories.Count != 0 - ? workHistories - : new List { new() }; - - var PenaltyTitles = _masterPenaltyTitleApplication.Search(masterPetition.Id); - PenaltyTitles = - PenaltyTitles.Count != 0 - ? PenaltyTitles - : new List { new() }; - - masterPetition.File_Id = fileId; - masterPetition.BoardType_Id = boardTypeId; - masterPetition.FileData = file; - masterPetition.CreateMasterWorkHistory = workHistories; - masterPetition.CreateMasterPenaltyTitle = PenaltyTitles; - - return Partial("./CreateOrEditMasterPetition", masterPetition); - } - - public IActionResult OnPostCreateOrEditMasterPetition(EditMasterPetition command) - { - var masterPetitionResult = new OperationResult(); - //if (!ModelState.IsValid) - //{ - // return BadRequest(); - - //} - - //var result = _fileApplication.Edit(command.FileData); - - //if (!result.IsSuccedded) - // return new JsonResult(result); - - if (command.Id == 0) - masterPetitionResult = _masterPetitionApplication.Create(command); - else - masterPetitionResult = _masterPetitionApplication.Edit(command); - - if (!masterPetitionResult.IsSuccedded) - return new JsonResult(masterPetitionResult); - - var workResult = _masterWorkHistoryApplication.CreateMasterWorkHistories( - command.CreateMasterWorkHistory, - masterPetitionResult.SendId - ); - - if (!workResult.IsSuccedded) - return new JsonResult(workResult); - - var penaltyResult = _masterPenaltyTitleApplication.CreateMasterPenaltyTitles( - command.CreateMasterPenaltyTitle, - masterPetitionResult.SendId - ); - - if (!penaltyResult.IsSuccedded) - return new JsonResult(penaltyResult); - - return new JsonResult(penaltyResult); - } - - public IActionResult OnGetCreateOrEditEvidence(long fileId, int boardTypeId) - { - var file = _fileApplication.GetDetails(fileId); - - var evidence = _evidenceApplication.GetDetails(fileId, boardTypeId) ?? new EditEvidence(); - var evidenceDetails = _evidenceDetailApplication.Search(evidence.Id); - evidenceDetails = - evidenceDetails.Count != 0 - ? evidenceDetails - : new List { new() }; - - - evidence.File_Id = fileId; - evidence.BoardType_Id = boardTypeId; - evidence.FileData = file; - evidence.CreateEvidenceDetail = evidenceDetails; - - return Partial("./CreateOrEditEvidence", evidence); - } - - public IActionResult OnPostCreateOrEditEvidence(EditEvidence command) - { - var evidenceResult = new OperationResult(); - //if (!ModelState.IsValid) - //{ - // return BadRequest(); - - //} - - //var result = _fileApplication.Edit(command.FileData); - - //if (!result.IsSuccedded) - // return new JsonResult(result); - - if (command.Id == 0) - evidenceResult = _evidenceApplication.Create(command); - else - evidenceResult = _evidenceApplication.Edit(command); - - if (!evidenceResult.IsSuccedded) - return new JsonResult(evidenceResult); - - var evidenceDetail = _evidenceDetailApplication.CreateEvidenceDetail( - command.CreateEvidenceDetail, - evidenceResult.SendId - ); - - if (!evidenceDetail.IsSuccedded) - return new JsonResult(evidenceDetail); - - return new JsonResult(evidenceDetail); - } - - public IActionResult OnGetCreateOrEditFileTitle(string type) - { - var EditFileTitle = new EditFileTitle(); - EditFileTitle.FileTitlesList = _fileTitleApplication.Search(new FileTitleSearchModel { Type = type }); - - return Partial("./CreateOrEditFileTitle", EditFileTitle); - } - - public IActionResult OnPostCreateOrEditFileTitle(EditFileTitle command) - { - var result = new OperationResult(); - - if (_fileTitleApplication.Search(new FileTitleSearchModel { Title = command.Title, Type = command.Type }) - .Count != 0) - { - result.Failed("این عنوان قبلا ثبت شده است"); - } - else - { - if (command.Id == 0) - { - result = _fileTitleApplication.Create(command); - } - - else - { - var fileTitle = _fileTitleApplication.Search(new FileTitleSearchModel { Id = command.Id }) - .FirstOrDefault(); - fileTitle.Title = command.Title; - result = _fileTitleApplication.Edit(fileTitle); - } - } - - var res = new - { - result, - type = command.Type - }; - - return new JsonResult(res); - } - - public IActionResult OnGetCreateOrEditFileTiming(string type) - { - var FileTimings = _fileTimingApplication.Search(new FileTimingSearchModel()); - - if (FileTimings.Count == 0) - FileTimings = Enumerable.Repeat(new EditFileTiming(), 6).ToList(); - - return Partial("./CreateOrEditFileTiming", FileTimings); - } - - public IActionResult OnPostCreateOrEditFileTiming(List command) - { - var result = new OperationResult(); - - foreach (var item in command) - if (item.Id == 0) - _fileTimingApplication.Create(item); - - else - _fileTimingApplication.Edit(item); - - return new JsonResult(result.Succcedded()); - } - - public IActionResult OnGetFileSummary(long id) - { - var summary = _fileApplication.GetFileSummary(id); - - return Partial("FileSummary", summary); - } - - public JsonResult OnPostCheckUniqueArchiveNo(string archiveNo) - { - var sModel = new FileSearchModel { ArchiveNo = archiveNo }; - var vModel = _fileApplication.Search(sModel); - - return new JsonResult( - new - { - stat = vModel.Count() == 0 ? true : false, - message = vModel == null ? "" : "شماره بایگانی تکراری است" - } - ); - } - - public JsonResult OnPostCheckUniqueFileClass(string fileClass) - { - var sModel = new FileSearchModel { FileClass = fileClass }; - var vModel = _fileApplication.Search(sModel); - - return new JsonResult( - new - { - stat = vModel.Count() == 0 ? true : false, - message = vModel == null ? "" : "کلاسه پرونده تکراری است" - } - ); - } - - public JsonResult OnPostRemoveMasterPetition(long id) - { - _masterPenaltyTitleApplication.RemoveMasterPenaltyTitles(id); - _masterWorkHistoryApplication.RemoveMasterWorkHistories(id); - var result = _masterPetitionApplication.Remove(id); - - return new JsonResult(result); - } - - public JsonResult OnGetGetFileTitles(string type) - { - var fileTitlesList = new List(); - - if (type == "contact") - fileTitlesList = _contactApplication.GetAllContact().Select(x => x.NameContact).ToList(); - - else - fileTitlesList = _fileTitleApplication.Search(new FileTitleSearchModel { Type = type }).Select(x => x.Title) - .ToList(); - - - return new JsonResult(fileTitlesList); - } - - public JsonResult OnPostRemoveFileTitle(long id) - { - var result = _fileTitleApplication.Remove(id); - - return new JsonResult(result); - } - - public JsonResult OnPostRemoveEvidence(long id) - { - _evidenceDetailApplication.RemoveEvidenceDetails(id); - var result = _evidenceApplication.Remove(id); - - return new JsonResult(result); - } - - public JsonResult OnPostSetFileStatus(long id, int status) - { - var result = new OperationResult(); - var file = _fileApplication.GetDetails(id); - file.Status = status; - result = _fileApplication.Edit(file); - - switch (file.Status) - { - case 1: - - //file.Status = 2; - //result = _fileApplication.Edit(file); - result.Message = "پرونده با موفقیت فعال شد"; - break; - - case 2: - //file.Status = 1; - //result = _fileApplication.Edit(file); - result.Message = "پرونده با موفقیت غیرفعال شد"; - break; - - case 3: - //file.Status = 1; - //result = _fileApplication.Edit(file); - result.Message = "پرونده با موفقیت از بایگانی خارج شد"; - break; - } - - return new JsonResult(result); - } + UserId = x.Client == 1 ? x.Reqester : x.Summoned + }).ToList(), + UsersList = _fileApplication.GetAllEmploees().Select(x => new Users + { Id = x.Id, FullName = x.EmployeeFullName, RequesterOrSummoned = 1 }).ToList() + }; + + this.fileSearchModel.UsersList.AddRange(_fileApplication.GetAllEmployers() + .Select(x => new Users { Id = x.Id, FullName = x.FullName, RequesterOrSummoned = 2 }).ToList()); + } + else + { + this.fileSearchModel.ArchiveNo_FileClass_UserIdList = allFiles.Select(x => + new ArchiveNo_FileClass_UserIdList + { + ArchiveNo = x.ArchiveNo.ToString(), + FileClass = x.FileClass, + UserId = x.Client == 1 ? x.Reqester : x.Summoned + }).ToList(); + this.fileSearchModel.UsersList = _fileApplication.GetAllEmploees().Select(x => + new Users { Id = x.Id, FullName = x.EmployeeFullName, RequesterOrSummoned = 1 }).ToList(); + this.fileSearchModel.UsersList.AddRange(_fileApplication.GetAllEmployers() + .Select(x => new Users { Id = x.Id, FullName = x.FullName, RequesterOrSummoned = 2 }).ToList()); + } + + if (!fileSearchModel.IsSearch) + files = _fileApplication.Search(fileSearchModel).Take(50).ToList(); + else + files = _fileApplication.Search(fileSearchModel).ToList(); + + files.ForEach(f => f.ReqesterFullname = _fileApplication.GetEmployeeFullNameById(f.Reqester)); + files.ForEach(f => f.SummonedFullname = _fileApplication.GetEmployerFullNameById(f.Summoned)); + + viewModels = files; + + var i = 0; + foreach (var file in files.ToList()) + { + var tempViewModel = new FileViewModel(); + tempViewModel = _fileApplication.GetFileDetails(file); + + if (fileSearchModel.IsSearch) + { + if (_fileApplication.FilterFileDetails(tempViewModel, fileSearchModel)) + { + viewModels[i] = tempViewModel; + i++; + } + else + { + viewModels.RemoveAt(i); + } + } + } + } + + public IActionResult OnGetCreateFile() + { + var archiveNo = _fileApplication.FindLastArchiveNumber(); + + var createFile = new CreateFile + { + ArchiveNo = archiveNo + 1, + Employees = _fileApplication.GetAllEmploees(false), + Employers = _fileApplication.GetAllEmployers(false), + Contacts = _contactApplication.GetAllContact() + }; + + + return Partial("./CreateFile", createFile); + } + + public IActionResult OnPostCreateFile(CreateFile command) + { + var result = _fileApplication.Create(command); + + return new JsonResult(result); + } + + public IActionResult OnGetEditFile(long id = -1) + { + if (id == -1) + { + var file = _fileApplication.Search(new FileSearchModel()).FirstOrDefault(); + if (file != null) id = file.Id; + } + + var editFile = _fileApplication.GetDetails(id); + var diagnosisBoard = + _boardApplication.GetDetails(editFile.Id, 1) + ?? new EditBoard { File_Id = editFile.Id, BoardType_Id = 1 }; + + var diagnosisPS = new List { new() }; + if (diagnosisBoard.Id != 0) + { + var PsSearchModel = new ProceedingSessionSearchModel { Board_Id = diagnosisBoard.Id, Status = 0 }; + diagnosisPS = _proceedingSessionApplication.Search(PsSearchModel); + + if (diagnosisPS.Count == 0) + diagnosisPS.Add(new EditProceedingSession()); + } + //diagnosisPS = + // diagnosisPS.Count != 0 + // ? diagnosisPS + // : new List { new EditProceedingSession() }; + + var diagnosisPetition = _petitionApplication.GetDetails(editFile.Id, 1); + + var disputeResolutionBoard = + _boardApplication.GetDetails(editFile.Id, 2) + ?? new EditBoard { File_Id = editFile.Id, BoardType_Id = 2 }; + + var disputeResolutionPS = new List { new() }; + if (disputeResolutionBoard.Id != 0) + { + var PsSearchModel = new ProceedingSessionSearchModel { Board_Id = disputeResolutionBoard.Id }; + disputeResolutionPS = _proceedingSessionApplication.Search(PsSearchModel); + + if (disputeResolutionPS.Count == 0) + disputeResolutionPS.Add(new EditProceedingSession()); + } + //disputeResolutionPS = + // disputeResolutionPS.Count != 0 + // ? disputeResolutionPS + // : new List { new EditProceedingSession() }; + + var disputeResolutionPetition = _petitionApplication.GetDetails(editFile.Id, 2); + + editFile.createDiagnosisBoard = diagnosisBoard; + editFile.createDiagnosisPS = diagnosisPS; + editFile.createDiagnosisPetition = diagnosisPetition; + + editFile.createDisputeResolutionBoard = disputeResolutionBoard; + editFile.createDisputeResolutionPS = disputeResolutionPS; + editFile.createDisputeResolutionPetition = disputeResolutionPetition; + editFile.Employees = _fileApplication.GetAllEmploees(); + editFile.Employers = _fileApplication.GetAllEmployers(); + + return Partial("Edit", editFile); + } + + public IActionResult OnPostEditFile(EditFile command) + { + using var transaction = new TransactionScope(); + var fileResult = _fileApplication.Edit(command); + + if (!fileResult.IsSuccedded) + return new JsonResult(fileResult); + + OperationResult diagnosisBoardResult; + if (command.createDiagnosisBoard.Id == 0) + diagnosisBoardResult = _boardApplication.Create(command.createDiagnosisBoard); + else + diagnosisBoardResult = _boardApplication.Edit(command.createDiagnosisBoard); + + if (!diagnosisBoardResult.IsSuccedded) + return new JsonResult(diagnosisBoardResult); + + if (command.createDiagnosisPS is { Count: > 0 }) + { + OperationResult diagnosisPs = _proceedingSessionApplication.CreateProceedingSessions( + command.createDiagnosisPS, + diagnosisBoardResult.SendId + ); + + if (!diagnosisPs.IsSuccedded) + return new JsonResult(diagnosisPs); + } + + OperationResult disputeBoardResult; + if (command.createDisputeResolutionBoard.Id == 0) + disputeBoardResult = _boardApplication.Create(command.createDisputeResolutionBoard); + else + disputeBoardResult = _boardApplication.Edit(command.createDisputeResolutionBoard); + + if (!disputeBoardResult.IsSuccedded) + return new JsonResult(disputeBoardResult); + + + + if (command.createDisputeResolutionPS is { Count: > 0 }) + { + OperationResult disputePs = _proceedingSessionApplication.CreateProceedingSessions( + command.createDisputeResolutionPS, + disputeBoardResult.SendId + ); + + if (!disputePs.IsSuccedded) + return new JsonResult(disputePs); + } + + transaction.Complete(); + + return new JsonResult(disputeBoardResult); + } + + public IActionResult OnGetCreateOrEditPetition(long fileId, int boardTypeId) + { + var file = _fileApplication.GetDetails(fileId); + + var petition = _petitionApplication.GetDetails(fileId, boardTypeId) ?? new EditPetition(); + var workHistories = _workHistoryApplication.Search(petition.Id); + workHistories = + workHistories.Count != 0 + ? workHistories + : new List { new() }; + + var PenaltyTitles = _penaltyTitleApplication.Search(petition.Id); + PenaltyTitles = + PenaltyTitles.Count != 0 + ? PenaltyTitles + : new List { new() }; + + petition.File_Id = fileId; + petition.BoardType_Id = boardTypeId; + petition.FileData = file; + petition.CreateWorkHistory = workHistories; + petition.CreatePenaltyTitle = PenaltyTitles; + + return Partial("./CreateOrEditPetition", petition); + } + + public IActionResult OnPostCreateOrEditPetition(EditPetition command) + { + var petitionResult = new OperationResult(); + + if (command.Id == 0) + petitionResult = _petitionApplication.Create(command); + else + petitionResult = _petitionApplication.Edit(command); + + if (!petitionResult.IsSuccedded) + return new JsonResult(petitionResult); + + var workResult = _workHistoryApplication.CreateWorkHistories( + command.CreateWorkHistory, + petitionResult.SendId + ); + + if (!workResult.IsSuccedded) + return new JsonResult(workResult); + + var penaltyResult = _penaltyTitleApplication.CreatePenaltyTitles( + command.CreatePenaltyTitle, + petitionResult.SendId + ); + + if (!penaltyResult.IsSuccedded) + return new JsonResult(penaltyResult); + + + return new JsonResult(penaltyResult); + } + + public IActionResult OnGetCreateOrEditMasterPetition(long fileId, int boardTypeId) + { + var file = _fileApplication.GetDetails(fileId); + + var masterPetition = _masterPetitionApplication.GetDetails(fileId, boardTypeId) ?? new EditMasterPetition(); + var workHistories = _masterWorkHistoryApplication.Search(masterPetition.Id); + workHistories = + workHistories.Count != 0 + ? workHistories + : new List { new() }; + + var PenaltyTitles = _masterPenaltyTitleApplication.Search(masterPetition.Id); + PenaltyTitles = + PenaltyTitles.Count != 0 + ? PenaltyTitles + : new List { new() }; + + masterPetition.File_Id = fileId; + masterPetition.BoardType_Id = boardTypeId; + masterPetition.FileData = file; + masterPetition.CreateMasterWorkHistory = workHistories; + masterPetition.CreateMasterPenaltyTitle = PenaltyTitles; + + return Partial("./CreateOrEditMasterPetition", masterPetition); + } + + public IActionResult OnPostCreateOrEditMasterPetition(EditMasterPetition command) + { + var masterPetitionResult = new OperationResult(); + //if (!ModelState.IsValid) + //{ + // return BadRequest(); + + //} + + //var result = _fileApplication.Edit(command.FileData); + + //if (!result.IsSuccedded) + // return new JsonResult(result); + + if (command.Id == 0) + masterPetitionResult = _masterPetitionApplication.Create(command); + else + masterPetitionResult = _masterPetitionApplication.Edit(command); + + if (!masterPetitionResult.IsSuccedded) + return new JsonResult(masterPetitionResult); + + var workResult = _masterWorkHistoryApplication.CreateMasterWorkHistories( + command.CreateMasterWorkHistory, + masterPetitionResult.SendId + ); + + if (!workResult.IsSuccedded) + return new JsonResult(workResult); + + var penaltyResult = _masterPenaltyTitleApplication.CreateMasterPenaltyTitles( + command.CreateMasterPenaltyTitle, + masterPetitionResult.SendId + ); + + if (!penaltyResult.IsSuccedded) + return new JsonResult(penaltyResult); + + return new JsonResult(penaltyResult); + } + + public IActionResult OnGetCreateOrEditEvidence(long fileId, int boardTypeId) + { + var file = _fileApplication.GetDetails(fileId); + + var evidence = _evidenceApplication.GetDetails(fileId, boardTypeId) ?? new EditEvidence(); + var evidenceDetails = _evidenceDetailApplication.Search(evidence.Id); + evidenceDetails = + evidenceDetails.Count != 0 + ? evidenceDetails + : new List { new() }; + + + evidence.File_Id = fileId; + evidence.BoardType_Id = boardTypeId; + evidence.FileData = file; + evidence.CreateEvidenceDetail = evidenceDetails; + + return Partial("./CreateOrEditEvidence", evidence); + } + + public IActionResult OnPostCreateOrEditEvidence(EditEvidence command) + { + var evidenceResult = new OperationResult(); + //if (!ModelState.IsValid) + //{ + // return BadRequest(); + + //} + + //var result = _fileApplication.Edit(command.FileData); + + //if (!result.IsSuccedded) + // return new JsonResult(result); + + if (command.Id == 0) + evidenceResult = _evidenceApplication.Create(command); + else + evidenceResult = _evidenceApplication.Edit(command); + + if (!evidenceResult.IsSuccedded) + return new JsonResult(evidenceResult); + + var evidenceDetail = _evidenceDetailApplication.CreateEvidenceDetail( + command.CreateEvidenceDetail, + evidenceResult.SendId + ); + + if (!evidenceDetail.IsSuccedded) + return new JsonResult(evidenceDetail); + + return new JsonResult(evidenceDetail); + } + + public IActionResult OnGetCreateOrEditFileTitle(string type) + { + var EditFileTitle = new EditFileTitle(); + EditFileTitle.FileTitlesList = _fileTitleApplication.Search(new FileTitleSearchModel { Type = type }); + + return Partial("./CreateOrEditFileTitle", EditFileTitle); + } + + public IActionResult OnPostCreateOrEditFileTitle(EditFileTitle command) + { + var result = new OperationResult(); + + if (_fileTitleApplication.Search(new FileTitleSearchModel { Title = command.Title, Type = command.Type }) + .Count != 0) + { + result.Failed("این عنوان قبلا ثبت شده است"); + } + else + { + if (command.Id == 0) + { + result = _fileTitleApplication.Create(command); + } + + else + { + var fileTitle = _fileTitleApplication.Search(new FileTitleSearchModel { Id = command.Id }) + .FirstOrDefault(); + fileTitle.Title = command.Title; + result = _fileTitleApplication.Edit(fileTitle); + } + } + + var res = new + { + result, + type = command.Type + }; + + return new JsonResult(res); + } + + public IActionResult OnGetCreateOrEditFileTiming(string type) + { + var FileTimings = _fileTimingApplication.Search(new FileTimingSearchModel()); + + if (FileTimings.Count == 0) + FileTimings = Enumerable.Repeat(new EditFileTiming(), 6).ToList(); + + return Partial("./CreateOrEditFileTiming", FileTimings); + } + + public IActionResult OnPostCreateOrEditFileTiming(List command) + { + var result = new OperationResult(); + + foreach (var item in command) + if (item.Id == 0) + _fileTimingApplication.Create(item); + + else + _fileTimingApplication.Edit(item); + + return new JsonResult(result.Succcedded()); + } + + public IActionResult OnGetFileSummary(long id) + { + var summary = _fileApplication.GetFileSummary(id); + + return Partial("FileSummary", summary); + } + + public JsonResult OnPostCheckUniqueArchiveNo(string archiveNo) + { + var sModel = new FileSearchModel { ArchiveNo = archiveNo }; + var vModel = _fileApplication.Search(sModel); + + return new JsonResult( + new + { + stat = vModel.Count() == 0 ? true : false, + message = vModel == null ? "" : "شماره بایگانی تکراری است" + } + ); + } + + public JsonResult OnPostCheckUniqueFileClass(string fileClass) + { + var sModel = new FileSearchModel { FileClass = fileClass }; + var vModel = _fileApplication.Search(sModel); + + return new JsonResult( + new + { + stat = vModel.Count() == 0 ? true : false, + message = vModel == null ? "" : "کلاسه پرونده تکراری است" + } + ); + } + + public JsonResult OnPostRemoveMasterPetition(long id) + { + _masterPenaltyTitleApplication.RemoveMasterPenaltyTitles(id); + _masterWorkHistoryApplication.RemoveMasterWorkHistories(id); + var result = _masterPetitionApplication.Remove(id); + + return new JsonResult(result); + } + + public JsonResult OnGetGetFileTitles(string type) + { + var fileTitlesList = new List(); + + if (type == "contact") + fileTitlesList = _contactApplication.GetAllContact().Select(x => x.NameContact).ToList(); + + else + fileTitlesList = _fileTitleApplication.Search(new FileTitleSearchModel { Type = type }).Select(x => x.Title) + .ToList(); + + + return new JsonResult(fileTitlesList); + } + + public JsonResult OnPostRemoveFileTitle(long id) + { + var result = _fileTitleApplication.Remove(id); + + return new JsonResult(result); + } + + public JsonResult OnPostRemoveEvidence(long id) + { + _evidenceDetailApplication.RemoveEvidenceDetails(id); + var result = _evidenceApplication.Remove(id); + + return new JsonResult(result); + } + + public JsonResult OnPostSetFileStatus(long id, int status) + { + var result = new OperationResult(); + var file = _fileApplication.GetDetails(id); + file.Status = status; + result = _fileApplication.Edit(file); + + switch (file.Status) + { + case 1: + + //file.Status = 2; + //result = _fileApplication.Edit(file); + result.Message = "پرونده با موفقیت فعال شد"; + break; + + case 2: + //file.Status = 1; + //result = _fileApplication.Edit(file); + result.Message = "پرونده با موفقیت غیرفعال شد"; + break; + + case 3: + //file.Status = 1; + //result = _fileApplication.Edit(file); + result.Message = "پرونده با موفقیت از بایگانی خارج شد"; + break; + } + + return new JsonResult(result); + } #region Mahan