List.razor 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. @page "/CompareFile/List"
  2. @inject IAgentFeedBackMemoItemsService _afService;
  3. @inject IAuthService _authService;
  4. @attribute [Authorize]
  5. <PageContainer>
  6. <Breadcrumb>
  7. <Breadcrumb>
  8. <BreadcrumbItem>
  9. <a href="/Home"><Icon Type="home"></Icon></a>
  10. </BreadcrumbItem>
  11. <BreadcrumbItem>
  12. <Icon Type="setting"></Icon><span>申请文件比较清单</span>
  13. </BreadcrumbItem>
  14. </Breadcrumb>
  15. </Breadcrumb>
  16. <Content>
  17. @*<Button Type="primary" Icon="plus" OnClick="AddNew" Style="float:right">添加</Button>*@
  18. </Content>
  19. <ChildContent>
  20. <div style="width:100%;overflow:auto;background:#FFFFFF;height:100%;" id="div-Container">
  21. <AntList Bordered DataSource="@_caseList">
  22. <Header>
  23. <Row>
  24. <Col Span="4">
  25. <Select TItem="Field"
  26. TItemValue="string"
  27. DataSource="@_fields"
  28. LabelName="@nameof(Field.FieldName)"
  29. ValueName="@nameof(Field.FieldValue)"
  30. Placeholder="请选择检索栏位"
  31. DefaultActiveFirstOption="false"
  32. OnSelectedItemChanged="OnSelectedItemChangedHandler"
  33. >
  34. </Select>
  35. </Col>
  36. <Col Span="6">
  37. <Input Placeholder="请输入检索条件" @bind-Value="@txtValue" />
  38. </Col>
  39. <Col Span="4">
  40. <Button Type="@ButtonType.Primary" Icon="@IconType.Outline.Search" OnClick="OnSearch">搜索</Button>
  41. </Col>
  42. <Col>
  43. @if (_filter !=null && _filter.ConditionTree !=null && _filter.ConditionTree?.Count > 0)
  44. {
  45. foreach(var c in _filter.ConditionTree)
  46. {
  47. <Tag Closable OnClose="()=>RemoveCondition(c)">@ConvertFiledCondition2String(c)</Tag>
  48. }
  49. }
  50. </Col>
  51. </Row>
  52. </Header>
  53. <ChildContent Context="item">
  54. <ListItem>
  55. <PageHeader Ghost="false">
  56. <PageHeaderTitle>@item.CaseNo</PageHeaderTitle>
  57. <PageHeaderSubtitle>@item.CaseName</PageHeaderSubtitle>
  58. <PageHeaderExtra>
  59. <Button Type="@ButtonType.Link" @onclick="()=>Showdetail(item)">详情</Button>
  60. </PageHeaderExtra>
  61. <PageHeaderContent>
  62. <Descriptions Size="small" Column="3">
  63. <DescriptionsItem Title="处理人" Span="1">@item.Handlers</DescriptionsItem>
  64. <DescriptionsItem Title="核稿人" Span="1">@item.Reviewer?.Name</DescriptionsItem>
  65. <DescriptionsItem Span="1">
  66. <Space>
  67. <SpaceItem>
  68. @if(item.DRRCalim != null)
  69. {
  70. <Statistic Title="初稿&返稿权要相似度" Value="@($"{(item.DRRCalim.TextSimilarity*100.00).ToString("0.00")}%")" PrefixTemplate="@prefix1" />
  71. }
  72. else
  73. {
  74. <Statistic Title="返稿&定稿权要相似度" Value="0" PrefixTemplate="@prefix1" />
  75. }
  76. </SpaceItem>
  77. <SpaceItem>
  78. @if(item.RFRAll != null)
  79. {
  80. <Statistic Title="返稿&定稿相似度" Value="@($"{(item.RFRAll.TextSimilarity*100.00).ToString("0.00")}%")" PrefixTemplate="@prefix1" />
  81. }
  82. else
  83. {
  84. <Statistic Title="返稿&定稿相似度" Value="0" PrefixTemplate="@prefix1" />
  85. }
  86. </SpaceItem>
  87. </Space>
  88. </DescriptionsItem>
  89. <DescriptionsItem Title="客户" Span="3">@item.Customer?.Name</DescriptionsItem>
  90. </Descriptions>
  91. </PageHeaderContent>
  92. </PageHeader>
  93. </ListItem>
  94. </ChildContent>
  95. <Footer>
  96. <div>
  97. @if (((_total % _pageSize == 0) ? _total / _pageSize : (_total / _pageSize + 1)) > 1)
  98. {
  99. <div style="float:right">
  100. @if (_pageIndex > 1)
  101. {
  102. <Tooltip Title="@("上一页")">
  103. <Button Type="@ButtonType.Default" Icon="@IconType.Outline.LeftCircle" OnClick="()=>OnPageChange(_pageIndex-1)"/>
  104. </Tooltip>
  105. }
  106. else
  107. {
  108. <Tooltip Title="@("上一页")">
  109. <Button Type="@ButtonType.Default" Icon="@IconType.Outline.LeftCircle" OnClick="()=>OnPageChange(_pageIndex-1)"
  110. Disabled
  111. />
  112. </Tooltip>
  113. }
  114. @{
  115. int _totalPages = ((_total % _pageSize == 0) ? _total / _pageSize : (_total / _pageSize + 1));
  116. int start = ((_pageIndex - 5) < 0 ? 1 : (_pageIndex - 5));
  117. int end = ((_pageIndex + 5) > _totalPages ? _totalPages : (_pageIndex + 5));
  118. Console.WriteLine($"开始:{start},结束:{end}");
  119. for (int iPage = start; iPage <= end; iPage++)
  120. {
  121. int iTem = iPage;
  122. if (iTem == _pageIndex)
  123. {
  124. <Button Type="@ButtonType.Primary" Shape="@ButtonShape.Circle">@((MarkupString)iTem.ToString())</Button>
  125. }
  126. else
  127. {
  128. <Button Type="@ButtonType.Default" Shape="@ButtonShape.Circle" OnClick="()=>OnPageChange(iTem)">@((MarkupString)iTem.ToString())</Button>
  129. }
  130. }
  131. }
  132. @if (_pageIndex < ((_total % _pageSize == 0) ? _total / _pageSize : (_total / _pageSize + 1)))
  133. {
  134. <Tooltip Title="@("下一页")">
  135. <Button Type="@ButtonType.Default" Icon="@IconType.Outline.RightCircle" OnClick="()=>OnPageChange(_pageIndex+1)"/>
  136. </Tooltip>
  137. }
  138. else
  139. {
  140. <Tooltip Title="@("下一页")">
  141. <Button Type="@ButtonType.Default" Icon="@IconType.Outline.RightCircle" OnClick="()=>OnPageChange(_pageIndex+1)"
  142. Disabled
  143. />
  144. </Tooltip>
  145. }
  146. 总数:@_total
  147. </div>
  148. }
  149. </div>
  150. </Footer>
  151. </AntList>
  152. </div>
  153. </ChildContent>
  154. </PageContainer>
  155. <Modal Title="@("对比详情")"
  156. Visible="@_DetailShow"
  157. OnOk="@btnOk"
  158. OnCancel="@btnCancel"
  159. Centered="@true"
  160. Width="800"
  161. >
  162. <label for="result">对比结果:</label>
  163. <div>
  164. <RadioGroup @bind-Value="@_value" >
  165. <Radio Value="1">初稿&第一次返稿对比</Radio>
  166. <Radio Value="2">第一次返稿&定稿对比</Radio>
  167. </RadioGroup>
  168. </div>
  169. <div id="result">
  170. <table width="100%" border="1">
  171. <thead>
  172. <tr>
  173. <td></td>
  174. <td>权利要求</td>
  175. <td>摘要</td>
  176. <td>说明书</td>
  177. <td>全部对比</td>
  178. </tr>
  179. </thead>
  180. <tbody>
  181. <tr>
  182. <td>语义相似度[%]</td>
  183. @if (_value == 1)
  184. {
  185. <td> @($"{(_currentCase.DRRCalim?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  186. <td>@($"{(_currentCase.DRRAbstract?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  187. <td>@($"{(_currentCase.DRRFulltext?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  188. <td>@($"{(_currentCase.DRRFulltext?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  189. }
  190. else
  191. {
  192. <td>@($"{(_currentCase.RFRCalim?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  193. <td>@($"{(_currentCase.RFRAbstract?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  194. <td>@($"{(_currentCase.RFRFulltext?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  195. <td>@($"{(_currentCase.RFRFulltext?.TextSimilarity * 100)?.ToString("0.00")}")</td>
  196. }
  197. </tr>
  198. <tr>
  199. <td>原文字数</td>
  200. @if (_value == 1)
  201. {
  202. <td>@_currentCase.DRRCalim?.oldWordCount</td>
  203. <td>@_currentCase.DRRAbstract?.oldWordCount</td>
  204. <td>@_currentCase.DRRFulltext?.oldWordCount</td>
  205. <td>@_currentCase.DRRAll?.oldWordCount</td>
  206. }
  207. else
  208. {
  209. <td>@_currentCase.RFRCalim?.oldWordCount</td>
  210. <td>@_currentCase.RFRAbstract?.oldWordCount</td>
  211. <td>@_currentCase.RFRFulltext?.oldWordCount</td>
  212. <td>@_currentCase.RFRAll?.oldWordCount</td>
  213. }
  214. </tr>
  215. <tr>
  216. <td>删除字数</td>
  217. @if (_value == 1)
  218. {
  219. <td>@_currentCase.DRRCalim?.DeleteCount</td>
  220. <td>@_currentCase.DRRAbstract?.DeleteCount</td>
  221. <td>@_currentCase.DRRFulltext?.DeleteCount</td>
  222. <td>@_currentCase.DRRAll?.DeleteCount</td>
  223. }
  224. else
  225. {
  226. <td>@_currentCase.RFRCalim?.DeleteCount</td>
  227. <td>@_currentCase.RFRAbstract?.DeleteCount</td>
  228. <td>@_currentCase.RFRFulltext?.DeleteCount</td>
  229. <td>@_currentCase.RFRAll?.DeleteCount</td>
  230. }
  231. </tr>
  232. <tr>
  233. <td>插入字数</td>
  234. @if (_value == 1)
  235. {
  236. <td>@_currentCase.DRRCalim?.InsertCount</td>
  237. <td>@_currentCase.DRRAbstract?.InsertCount</td>
  238. <td>@_currentCase.DRRFulltext?.InsertCount</td>
  239. <td>@_currentCase.DRRAll?.InsertCount</td>
  240. }
  241. else
  242. {
  243. <td>@_currentCase.RFRCalim?.InsertCount</td>
  244. <td>@_currentCase.RFRAbstract?.InsertCount</td>
  245. <td>@_currentCase.RFRFulltext?.InsertCount</td>
  246. <td>@_currentCase.RFRAll?.InsertCount</td>
  247. }
  248. </tr>
  249. <tr>
  250. <td>修改比例[%]</td>
  251. @if (_value == 1)
  252. {
  253. <td> @($"{(_currentCase.DRRCalim?.diffRate*100)?.ToString("0.00")}")</td>
  254. <td>@($"{(_currentCase.DRRAbstract?.diffRate*100)?.ToString("0.00")}")</td>
  255. <td>@($"{(_currentCase.DRRFulltext?.diffRate*100)?.ToString("0.00")}")</td>
  256. <td>@($"{(_currentCase.DRRFulltext?.diffRate*100)?.ToString("0.00")}")</td>
  257. }
  258. else
  259. {
  260. <td> @($"{(_currentCase.RFRCalim?.diffRate*100)?.ToString("0.00")}")</td>
  261. <td>@($"{(_currentCase.RFRAbstract?.diffRate*100)?.ToString("0.00")}")</td>
  262. <td>@($"{(_currentCase.RFRFulltext?.diffRate*100)?.ToString("0.00")}")</td>
  263. <td>@($"{(_currentCase.RFRFulltext?.diffRate*100)?.ToString("0.00")}")</td>
  264. }
  265. </tr>
  266. </tbody>
  267. </table>
  268. </div>
  269. <div>
  270. <label>修订文字:</label>
  271. <RadioGroup @bind-Value="@_ShowResultString" >
  272. <Radio Value="1">权要</Radio>
  273. <Radio Value="2">摘要</Radio>
  274. <Radio Value="3">说明书</Radio>
  275. <Radio Value="4">全文</Radio>
  276. </RadioGroup>
  277. </div>
  278. <div style="user-select:text !important;width:100%;height:300px;overflow: auto;border: 2px solid black;padding: 10px;">
  279. @if(_ShowResultString==1 && _value == 1)
  280. {
  281. @((MarkupString)_currentCase.DRRCalim?.CompareResultString)
  282. }
  283. @if(_ShowResultString==2 && _value == 1)
  284. {
  285. @((MarkupString)_currentCase.DRRAbstract?.CompareResultString)
  286. }
  287. @if(_ShowResultString==3 && _value == 1)
  288. {
  289. @((MarkupString)_currentCase.DRRFulltext?.CompareResultString)
  290. }
  291. @if(_ShowResultString==4 && _value == 1)
  292. {
  293. @((MarkupString)_currentCase.DRRAll?.CompareResultString)
  294. }
  295. @if(_ShowResultString==1 && _value == 2)
  296. {
  297. @((MarkupString)_currentCase.RFRCalim?.CompareResultString)
  298. }
  299. @if(_ShowResultString==2 && _value == 2)
  300. {
  301. @((MarkupString)_currentCase.RFRAbstract?.CompareResultString)
  302. }
  303. @if(_ShowResultString==3 && _value == 2)
  304. {
  305. @((MarkupString)_currentCase.RFRFulltext?.CompareResultString)
  306. }
  307. @if(_ShowResultString==4 && _value == 2)
  308. {
  309. @((MarkupString)_currentCase.RFRAll?.CompareResultString)
  310. }
  311. </div>
  312. </Modal>
  313. @code
  314. {
  315. RenderFragment prefix1 =@<Icon Type="like" />;
  316. }