SheetConfig.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Text.Json;
  5. namespace TEAMModelOS.SDK.Models
  6. {
  7. public class SheetConfig :CosmosEntity
  8. {
  9. /// <summary>
  10. /// exam代表评测来源的答题卡,paper代表试卷来源的答题卡,sheet 代表直接创建答题卡的来源
  11. /// </summary>
  12. public string from { get; set; }
  13. /// <summary>
  14. /// 答题卡编号
  15. /// </summary>
  16. public string no { get; set; }
  17. public string school { get; set; }
  18. public string creatorId { get; set; }
  19. public string scope { get; set; }
  20. /// <summary>
  21. /// 关联id,如果没有关联则为null
  22. /// </summary>
  23. //public string sid { get; set; } = null;
  24. /// <summary>
  25. /// //列数
  26. /// </summary>
  27. public int columns { get; set; }
  28. /// <summary>
  29. /// 题目数量
  30. /// </summary>
  31. public int itemCount { get; set; }
  32. /// <summary>
  33. /// 页数
  34. /// </summary>
  35. public int pageCount { get; set; }
  36. /// <summary>
  37. /// 页面大小(回字组成的)
  38. /// </summary>
  39. public int pageWidth { get; set; }
  40. /// <summary>
  41. /// 页面大小(回字组成的)
  42. /// </summary>
  43. public int pageHeight { get; set; }
  44. /// <summary>
  45. /// 标记是读取填涂黑块还是读取二维码
  46. /// </summary>
  47. public string infoMode { get; set; }
  48. public List<JsonElement> infoPos{ get; set; } = new List<JsonElement>();
  49. public List<JsonElement> objectivePos { get; set; } = new List<JsonElement>();
  50. /// <summary>
  51. /// 答题卡是A3 A4纸张
  52. /// </summary>
  53. public string mode { get; set; }
  54. /// <summary>
  55. /// 页码块数量
  56. /// </summary>
  57. public int pageNumBlockCount { get; set; }
  58. /// <summary>
  59. /// 页码起始值, 起始是3个空格方块开始,写1; 2个空格1个实心,写0
  60. /// </summary>
  61. public int pageNumStartValue { get; set; }
  62. /// <summary>
  63. /// 二值化区间(pc)-->不同扫描仪的结果图像数据有差距, 按需调整
  64. /// </summary>
  65. // public List<int> threshValue { get; set; } = new List<int> { 190, 220, 10 };
  66. /// <summary>
  67. /// 二值化区间(手机)
  68. /// </summary>
  69. // public List<int> threshValuePhone { get; set; } = new List<int> { 190, 220, 10 };
  70. /// <summary>
  71. /// 单个整体回字大小
  72. /// </summary>
  73. //public double huiSize { get; set; } = 70;
  74. /// <summary>
  75. /// 最小回字的大小比列, 以回字最中间的方块为最小
  76. /// </summary>
  77. // public double minHuiSize { get; set; } = 0.005;
  78. /// <summary>
  79. /// 最大回字的大小比列, 以回字最外层的方块为最大
  80. /// </summary>
  81. // public double maxHuiSize { get; set; } = 0.1;
  82. /// <summary>
  83. /// 不检测回字区域(pc版辅助效果20%, 手机版50%)
  84. /// </summary>
  85. //public List<double> notHuisRect { get; set; } = new List<double> { 0.3, 0.3, 0.4, 0.4 };
  86. /// <summary>
  87. /// 内容块 vblockCount为该模块竖向的方块数 hblockCount为该模块横向方块数
  88. /// </summary>
  89. public List<ConfigContent> contents { get; set; }
  90. }
  91. public class ConfigContent
  92. {
  93. public int index { get; set; }
  94. public int count { get; set; }
  95. public int type { get; set; }
  96. public int x { get; set; }
  97. public int y { get; set; }
  98. public int width { get; set; }
  99. public int height { get; set; }
  100. public int pageNum { get; set; }
  101. public int vblockCount { get; set; }
  102. public int hblockCount { get; set; }
  103. public int id { get; set; }
  104. }
  105. }