LevelStatistics.razor 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. @page "/LevelStatistics"
  2. <PageContainer>
  3. <Breadcrumb>
  4. <Breadcrumb>
  5. <BreadcrumbItem>
  6. <a href="/Home"><Icon Type="home"></Icon></a>
  7. </BreadcrumbItem>
  8. <BreadcrumbItem>
  9. <Icon Type="manager"></Icon><span>代理人等级考核计算</span>
  10. </BreadcrumbItem>
  11. </Breadcrumb>
  12. </Breadcrumb>
  13. <ChildContent>
  14. <Card Title="">
  15. <Extra>
  16. <DatePicker TValue="DateTime?" @bind-Value="@SelectedTime" @Ref="refDate" Picker="@DatePickerType.Quarter" Locale="@CN" CultureInfo="CiCn"/>
  17. <Button Type="primary" Icon="folder-add" OnClick="()=>ShowSelectedDate()" Style="float:right">查看</Button>
  18. </Extra>
  19. <CardTabs>
  20. <Tabs>
  21. <TabPane Key="A" Tab="A级代理人">
  22. @if(AResult == null)
  23. {
  24. <spin/>
  25. }
  26. else
  27. {
  28. <table width="100%" border="1" style="line-height:40px;">
  29. <thead>
  30. <tr>
  31. <th rowspan="2" width="10%">代理人</th>
  32. <th rowspan="2" width="16%">部门</th>
  33. <th rowspan="2" width="10%">代理人等级</th>
  34. <th colspan="4">承办</th>
  35. <th colspan="4">审核</th>
  36. <th rowspan="2" width="8%">Z1(承办)</th>
  37. <th rowspan="2" width="8%">Z2(核稿)</th>
  38. </tr>
  39. <tr>
  40. <th width="6%">S</th>
  41. <th width="6%">A</th>
  42. <th width="6%">B</th>
  43. <th width="6%">C</th>
  44. <th width="6%">S</th>
  45. <th width="6%">A</th>
  46. <th width="6%">B</th>
  47. <th width="6%">C</th>
  48. </tr>
  49. </thead>
  50. <tbody>
  51. @foreach(var TemObj in AResult.Statistics)
  52. {
  53. <tr>
  54. <td align="center">@TemObj.StaffName</td>
  55. <td align="center">@TemObj.Department</td>
  56. <td align="center">@TemObj.Grade</td>
  57. <td align="center">@TemObj.dS</td>
  58. <td align="center">@TemObj.dA</td>
  59. <td align="center">@TemObj.dB</td>
  60. <td align="center">@TemObj.dC</td>
  61. <td align="center">@TemObj.vS</td>
  62. <td align="center">@TemObj.vA</td>
  63. <td align="center">@TemObj.vB</td>
  64. <td align="center">@TemObj.vC</td>
  65. <td align="center">@((AResult.pAverage(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  66. <td align="center">@((AResult.pvAverage(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  67. </tr>
  68. }
  69. </tbody>
  70. </table>
  71. }
  72. </TabPane>
  73. <TabPane Key="B" Tab="B级代理人">
  74. @if(BResult == null)
  75. {
  76. <spin/>
  77. }
  78. else
  79. {
  80. <table width="100%" border="1" style="line-height:40px;">
  81. <thead>
  82. <tr>
  83. <th rowspan="2" width="10%">代理人</th>
  84. <th rowspan="2">部门</th>
  85. <th rowspan="2" width="10%">代理人等级</th>
  86. <th colspan="5">承办</th>
  87. <th rowspan="2" width="8%">Z1</th>
  88. <th rowspan="2" width="8%">B2(B*0.95)</th>
  89. <th rowspan="2" width="8%">B3(B*100%)</th>
  90. <th rowspan="2" width="8%">A1</th>
  91. </tr>
  92. <tr>
  93. <th width="6%">S</th>
  94. <th width="6%">A</th>
  95. <th width="6%">B</th>
  96. <th width="6%">C</th>
  97. <th width="6%">D</th>
  98. </tr>
  99. </thead>
  100. <tbody>
  101. @foreach(var TemObj in BResult.Statistics)
  102. {
  103. <tr>
  104. <td align="center">@TemObj.StaffName</td>
  105. <td align="center">@TemObj.Department</td>
  106. <td align="center">@TemObj.Grade</td>
  107. <td align="center">@TemObj.dS</td>
  108. <td align="center">@TemObj.dA</td>
  109. <td align="center">@TemObj.dB</td>
  110. <td align="center">@TemObj.dC</td>
  111. <td align="center">@TemObj.dD</td>
  112. <td align="center">@((BResult.pAverage(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  113. <td align="center">@((BResult.p2(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  114. <td align="center">@((BResult.p3(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  115. <td align="center">@((BResult.toUpgradeLevel(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  116. </tr>
  117. }
  118. </tbody>
  119. </table>
  120. }
  121. </TabPane>
  122. <TabPane Key="C" Tab="C级代理人">
  123. @if(CResult == null)
  124. {
  125. <spin/>
  126. }
  127. else
  128. {
  129. <table width="100%" border="1" style="line-height:40px;">
  130. <thead>
  131. <tr>
  132. <th rowspan="2" width="10%">代理人</th>
  133. <th rowspan="2">部门</th>
  134. <th rowspan="2" width="10%">代理人等级</th>
  135. <th colspan="5">承办</th>
  136. <th rowspan="2" width="8%">Z1</th>
  137. <th rowspan="2" width="8%">C2(B*0.7)</th>
  138. <th rowspan="2" width="8%">C3(B*0.8))</th>
  139. <th rowspan="2" width="8%">B1(B*0.9)</th>
  140. </tr>
  141. <tr>
  142. <th width="6%">S</th>
  143. <th width="6%">A</th>
  144. <th width="6%">B</th>
  145. <th width="6%">C</th>
  146. <th width="6%">D</th>
  147. </tr>
  148. </thead>
  149. <tbody>
  150. @foreach(var TemObj in CResult.Statistics)
  151. {
  152. <tr>
  153. <td align="center">@TemObj.StaffName</td>
  154. <td align="center">@TemObj.Department</td>
  155. <td align="center">@TemObj.Grade</td>
  156. <td align="center">@TemObj.dS</td>
  157. <td align="center">@TemObj.dA</td>
  158. <td align="center">@TemObj.dB</td>
  159. <td align="center">@TemObj.dC</td>
  160. <td align="center">@TemObj.dD</td>
  161. <td align="center">@((CResult.pAverage(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  162. <td align="center">@((CResult.p2(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  163. <td align="center">@((CResult.p3(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  164. <td align="center">@((CResult.toUpgradeLevel(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  165. </tr>
  166. }
  167. </tbody>
  168. </table>
  169. }
  170. </TabPane>
  171. <TabPane Key="D" Tab="D级代理人">
  172. @if(CResult == null)
  173. {
  174. <spin/>
  175. }
  176. else
  177. {
  178. <table width="100%" border="1" style="line-height:40px;">
  179. <thead>
  180. <tr>
  181. <th rowspan="2" width="10%">代理人</th>
  182. <th rowspan="2">部门</th>
  183. <th rowspan="2" width="10%">代理人等级</th>
  184. <th colspan="5">承办</th>
  185. <th rowspan="2" width="8%">Z1</th>
  186. <th rowspan="2" width="8%">D2(14)</th>
  187. <th rowspan="2" width="8%">D3(16)</th>
  188. <th rowspan="2" width="8%">C1(18)</th>
  189. </tr>
  190. <tr>
  191. <th width="6%">S</th>
  192. <th width="6%">A</th>
  193. <th width="6%">B</th>
  194. <th width="6%">C</th>
  195. <th width="6%">D</th>
  196. </tr>
  197. </thead>
  198. <tbody>
  199. @foreach(var TemObj in DResult.Statistics)
  200. {
  201. <tr>
  202. <td align="center">@TemObj.StaffName</td>
  203. <td align="center">@TemObj.Department</td>
  204. <td align="center">@TemObj.Grade</td>
  205. <td align="center">@TemObj.dS</td>
  206. <td align="center">@TemObj.dA</td>
  207. <td align="center">@TemObj.dB</td>
  208. <td align="center">@TemObj.dC</td>
  209. <td align="center">@TemObj.dD</td>
  210. <td align="center">@((DResult.pAverage(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  211. <td align="center">@((DResult.p2(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  212. <td align="center">@((DResult.p3(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  213. <td align="center">@((DResult.toUpgradeLevel(TemObj.StaffId)*100.00).ToString("0.00"))%</td>
  214. </tr>
  215. }
  216. </tbody>
  217. </table>
  218. }
  219. </TabPane>
  220. </Tabs>
  221. </CardTabs>
  222. </Card>
  223. </ChildContent>
  224. </PageContainer>