MyProject.razor 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. @page "/Project/MyProjects"
  2. <PageContainer>
  3. <Breadcrumb>
  4. <Breadcrumb>
  5. <BreadcrumbItem>
  6. <a href="/Home"><Icon Type="home"></Icon></a>
  7. </BreadcrumbItem>
  8. <BreadcrumbItem>
  9. <span>我的专案</span>
  10. </BreadcrumbItem>
  11. </Breadcrumb>
  12. </Breadcrumb>
  13. <Content>
  14. <Button Type="primary" Icon="plus" OnClick="AddNew" Style="float:right">添加工作内容</Button>
  15. </Content>
  16. <ChildContent>
  17. @if (ProjectInfos == null)
  18. {
  19. <center><Spin /></center>
  20. }
  21. else
  22. {
  23. <AntDesign.Table @bind-PageIndex="_pageIndex" @bind-PageSize="_pageSize"
  24. Total="@_total"
  25. TItem="ProjectContentRecord"
  26. Loading="_loading"
  27. DataSource="@ProjectInfos"
  28. Bordered=@true
  29. Size=@TableSize.Middle>
  30. <RowTemplate>
  31. @*<Selection Key="@(context.ProjectNo)" />*@
  32. <AntDesign.Column Title="序号" TData="int" Width="60">
  33. @serialNumber(_pageIndex, _pageSize, context)
  34. </AntDesign.Column>
  35. <AntDesign.Column Title="我方文号" @bind-Field="@context.ProjectNo" Sortable Filterable />
  36. <AntDesign.Column Title="案件名称" DataIndex="Project.CaseName" TData="string" Sortable Filterable />
  37. <AntDesign.Column Title="案件类型" DataIndex="Project.CaseType" TData="string" Sortable Filterable />
  38. <AntDesign.Column Title="业务类型" DataIndex="Project.BusinessType" TData="string" Sortable Filterable />
  39. <AntDesign.Column Title="客户" DataIndex="Project.Customer.Name" TData="string" Sortable Filterable />
  40. <AntDesign.Column Title="绩效月份" TData="string" Sortable Filterable>
  41. @($"{context.CalMonth.Year}年{context.CalMonth.Month}月")
  42. </AntDesign.Column>
  43. <AntDesign.Column Title="最终绩效" TData="string">
  44. @($"{context.Point}{context.CaseCoefficient}")
  45. </AntDesign.Column>
  46. <ActionColumn>
  47. <Space>
  48. @if (context.State == 0)
  49. {
  50. <SpaceItem><Button Danger OnClick="() => Edit(context)">修改</Button></SpaceItem>
  51. <SpaceItem><Button Danger OnClick="() => Submit(context)">提交审核</Button></SpaceItem>
  52. }
  53. </Space>
  54. </ActionColumn>
  55. </RowTemplate>
  56. <ExpandTemplate>
  57. <Table DataSource="context.Data.ProjectWorkContents" Context="pp">
  58. <ChildContent>
  59. <AntDesign.Column Title="工作内容" TData="string">
  60. @pp.Content
  61. </AntDesign.Column>
  62. <AntDesign.Column Title="工作日期" TData="string">
  63. @pp.WorkDate.ToString("yyyy-MM-dd")
  64. </AntDesign.Column>
  65. <AntDesign.Column Title="时间跨度" TData="string">
  66. @pp.TimeSpan 天
  67. </AntDesign.Column>
  68. <AntDesign.Column Title="耗时" TData="string">
  69. @pp.TakeTime 小时
  70. </AntDesign.Column>
  71. <AntDesign.Column Title="工作难度系数" TData="string">
  72. @pp.DifficultFactor
  73. </AntDesign.Column>
  74. <AntDesign.Column Title="实际绩效" TData="string">
  75. @pp.ActualPerformance
  76. </AntDesign.Column>
  77. <AntDesign.Column Title="最终绩效" TData="string">
  78. @pp.FinalPerformance
  79. </AntDesign.Column>
  80. </ChildContent>
  81. </Table>
  82. </ExpandTemplate>
  83. <PaginationTemplate>
  84. <div style="display: flex; align-items: center">
  85. <Pagination Class="my-custom-pagination"
  86. Total="@_total"
  87. PageSize="@_pageSize"
  88. Current="@_pageIndex"
  89. ShowSizeChanger="@true"
  90. OnChange="HandlePageChange" />
  91. </div>
  92. </PaginationTemplate>
  93. </AntDesign.Table>
  94. }
  95. </ChildContent>
  96. </PageContainer>
  97. <style>
  98. .my-custom-pagination {
  99. margin: 15px 0;
  100. }
  101. .my-custom-pagination .ant-pagination-item,
  102. .my-custom-pagination .ant-pagination-item-link {
  103. border-radius: 100%;
  104. }
  105. </style>