using AntDesign; using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components.Web; using System; using System.Collections.Generic; using System.Linq; using System.Text.Json; using System.Threading.Tasks; using wispro.sp.entity; using wispro.sp.share; using wispro.sp.web.Models; using wispro.sp.web.Services; namespace wispro.sp.web.Pages.Project { public partial class AssignPoint { [Inject] public MessageService MsgSvr { get; set; } [Inject] protected PerformanceItemServices _itemService { get; set; } [Inject] NavigationManager _NavigationManager { get; set; } ProjectContents task = new() { ProjectContentRecord = new ProjectContentRecord(), ProjectWorkContents = new List() }; List _ShowWorkContent; List ProjectInfos; List ShowProjectInfos; ViewProjectWorkContent addDoItem; [Parameter] public int? Id { get; set; } private void AddNew() { addDoItem = new ViewProjectWorkContent(); addDoItem.modifyState = ModifyState.New; task.ProjectWorkContents.Add(addDoItem); _ShowWorkContent = task.ProjectWorkContents.Where(p => p.modifyState != ModifyState.Deleted).ToList(); } protected async override Task OnInitializedAsync() { ProjectInfos =await _itemService.GetProjectInfos(0); ShowProjectInfos = ProjectInfos; if (Id.HasValue) { task = await _itemService.getProjectWorkContent(Id.Value); } await base.OnInitializedAsync(); } private void OnSelectedItemChangedHandler(ProjectInfo value) { task.ProjectContentRecord.ProjectNo = value.CaseNo; task.ProjectContentRecord.Project = value; } private void OnSearch(string value) { if (ProjectInfos != null) { ShowProjectInfos = ProjectInfos.Where(p => p.CaseNo.Contains(value)).ToList(); } StateHasChanged(); } void startEdit(ViewProjectWorkContent pw) { addDoItem = pw; } void deletePersonPoint(ViewProjectWorkContent pw) { if (pw.modifyState != ModifyState.New) { pw.modifyState = ModifyState.Deleted; } else { task.ProjectWorkContents.Remove(pw); } } void stopEdit() { addDoItem = null; } void DeleteDoItem(ProjectWorkContent pp) { task.ProjectWorkContents.Remove(pp); } void EditDoItem(ProjectWorkContent pp) { addDoItem = pp; } void addRow() { if (task.ProjectWorkContents == null) { task.ProjectWorkContents = new List(); } addDoItem = new ProjectWorkContent(); task.ProjectWorkContents.Add(addDoItem); StateHasChanged(); } async Task OnSave() { //添加保存代码 //var response = await _itemService.AddProjectPerformanctItem(task); //if (response.Success) //{ // await MsgSvr.Info("项目绩效保存成功!"); // _NavigationManager.NavigateTo("/MyCaseList"); //} //else //{ // await MsgSvr.Error(response.ErrorMessage); //} _NavigationManager.NavigateTo("/Project/MyProjects"); } void OnCancel() { _NavigationManager.NavigateTo("/Project/MyProjects"); } } }