OrderSnapshot.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404
  1. using Hotline.Orders;
  2. using Hotline.Share.Dtos;
  3. using Hotline.Share.Enums.Snapshot;
  4. using SqlSugar;
  5. using System.ComponentModel;
  6. using XF.Domain.Repository;
  7. namespace Hotline.Snapshot;
  8. /// <summary>
  9. /// 工单表扩展
  10. /// Id 和 Order.Id 相同
  11. /// </summary>
  12. [Description("工单表扩展")]
  13. public class OrderSnapshot : CreationSoftDeleteEntity
  14. {
  15. /// <summary>
  16. /// 上报用户的Id
  17. /// <inheritdoc cref="SnapshotUserInfo"/>
  18. /// </summary>
  19. [SugarColumn(ColumnDescription = "上报用户的Id")]
  20. public string? SnapshotUserId { get; set; }
  21. /// <summary>
  22. /// 行业Id
  23. /// <inheritdoc cref="Industry"/> 表的Id
  24. /// </summary>
  25. [SugarColumn(ColumnDescription = "行业Id")]
  26. public string IndustryId { get; set; }
  27. /// <summary>
  28. /// 行业名称
  29. /// <inheritdoc cref="Industry"/> 表的Name
  30. /// </summary>
  31. [SugarColumn(ColumnDescription = "行业名称")]
  32. public string IndustryName { get; set; }
  33. /// <summary>
  34. /// 社区Id
  35. /// <inheritdoc cref="CommunityInfo"/> 表的Id
  36. /// </summary>
  37. [SugarColumn(ColumnDescription = "社区Id")]
  38. public string? CommunityId { get; set; }
  39. /// <summary>
  40. /// 社区名字
  41. /// </summary>
  42. [SugarColumn(ColumnDescription = "社区名字")]
  43. public string? CommunityName { get; set; }
  44. /// <summary>
  45. /// 社区名字
  46. /// </summary>
  47. [SugarColumn(ColumnDescription = "社区名字")]
  48. public string? CommunityFullName { get; set; }
  49. /// <summary>
  50. /// 作业类型
  51. /// </summary>
  52. [SugarColumn(ColumnDescription = "作业类型")]
  53. public int? JobType { get; set; }
  54. /// <summary>
  55. /// 作业类型
  56. /// </summary>
  57. [SugarColumn(ColumnDescription ="作业类型")]
  58. public string? JobTypeName { get; set; }
  59. /// <summary>
  60. /// 经营单位类别
  61. /// </summary>
  62. [SugarColumn(ColumnDescription = "经营单位类别")]
  63. public string? BusinessUnitType { get; set; }
  64. /// <summary>
  65. /// 作业场所
  66. /// </summary>
  67. [SugarColumn(ColumnDescription = "作业场所")]
  68. public string? Workplace { get; set; }
  69. /// <summary>
  70. /// 场所名称(多个场所使用 - 连接)
  71. /// </summary>
  72. [SugarColumn(ColumnDescription = "场所名称")]
  73. public string? WorkplaceName { get; set; }
  74. /// <summary>
  75. /// 作业区域
  76. /// </summary>
  77. [SugarColumn(ColumnDescription = "作业区域")]
  78. public string? WorkArea { get; set; }
  79. /// <summary>
  80. /// 作业区域Id
  81. /// </summary>
  82. [SugarColumn(ColumnDescription = "作业区域Id")]
  83. public string? WorkAreaId { get; set; }
  84. /// <summary>
  85. /// 作业时间
  86. /// </summary>
  87. [SugarColumn(ColumnDescription = "作业时间")]
  88. public DateTime? StartWorkTime { get; set; }
  89. /// <summary>
  90. /// 作业结束时间
  91. /// </summary>
  92. [SugarColumn(ColumnDescription = "作业时间")]
  93. public DateTime? EndWorkTime { get; set; }
  94. /// <summary>
  95. /// 是否重点
  96. /// </summary>
  97. [SugarColumn(ColumnDescription = "是否重点")]
  98. public bool? IsEmphasis { get; set; }
  99. #region 标记工单是否安全生产字段
  100. /// <summary>
  101. /// 部门标记是否安全生产
  102. /// </summary>
  103. [SugarColumn(ColumnDescription = "部门标记是否安全生产")]
  104. public bool? IsSafetyDepartment { get; set; }
  105. /// <summary>
  106. /// 标记人
  107. /// </summary>
  108. [SugarColumn(ColumnDescription = "标记人")]
  109. public string? SignUserId { get; set; }
  110. /// <summary>
  111. /// 标记人
  112. /// </summary>
  113. [SugarColumn(ColumnDescription = "标记人")]
  114. public string? SignUserName { get; set; }
  115. /// <summary>
  116. /// 标记时间
  117. /// </summary>
  118. [SugarColumn(ColumnDescription = "标记时间")]
  119. public DateTime? SignTime { get; set; }
  120. /// <summary>
  121. /// 标记备注
  122. /// </summary>
  123. [SugarColumn(ColumnDescription = "标记备注")]
  124. public string? SignRemark { get; set; }
  125. #endregion
  126. /// <summary>
  127. /// 部门是否存在安全隐患
  128. /// </summary>
  129. [SugarColumn(ColumnDescription = "部门是否存在安全隐患")]
  130. public bool? IsDangerDepartment { get; set; }
  131. /// <summary>
  132. /// 部门是否属实
  133. /// </summary>
  134. [SugarColumn(ColumnDescription = "部门是否属实")]
  135. public bool? IsTruthDepartment { get; set; }
  136. /// <summary>
  137. /// 部门是否整改
  138. /// </summary>
  139. [SugarColumn(ColumnDescription = "部门是否整改")]
  140. public bool? IsRectifyDepartment { get; set; }
  141. /// <summary>
  142. /// 线索分类Id
  143. /// </summary>
  144. [SugarColumn(ColumnDescription = "线索分类")]
  145. public string? IndustryCase { get; set; }
  146. /// <summary>
  147. /// 小程序公开
  148. /// </summary>
  149. [SugarColumn(ColumnDescription = "小程序公开")]
  150. public bool? IsAppOpened { get; set; }
  151. /// <summary>
  152. /// 合规类型
  153. /// </summary>
  154. [SugarColumn(ColumnDescription = "合规类型")]
  155. public ECompliantType? CompliantType { get; set; }
  156. /// <summary>
  157. /// 发布工单时标记的工单标签
  158. /// </summary>
  159. [SugarColumn(ColumnDescription = "工单标签", ColumnDataType = "json", IsJson = true, IsNullable = true)]
  160. public IList<Kv>? Labels { get; set; }
  161. /// <summary>
  162. /// 发布工单时标记的工单标签(多个使用 | 分隔)
  163. /// </summary>
  164. [SugarColumn(ColumnDescription = "工单标签")]
  165. public string? LabelName { get; set; }
  166. /// <summary>
  167. /// 标签用户
  168. /// </summary>
  169. [SugarColumn(ColumnDescription = "标签用户")]
  170. public string? LabelUserName { get; set; }
  171. /// <summary>
  172. /// 标签用户Id
  173. /// </summary>
  174. [SugarColumn(ColumnDescription = "标签用户Id")]
  175. public string? LabelUserId { get; set; }
  176. /// <summary>
  177. /// 标签时间
  178. /// </summary>
  179. [SugarColumn(ColumnDescription = "标签时间")]
  180. public DateTime? LabelTime { get; set; }
  181. /// <summary>
  182. /// 工单办理:
  183. /// 是否申请追加奖励
  184. /// </summary>
  185. [SugarColumn(ColumnDescription = "是否申请追加奖励")]
  186. public bool? IsAward { get; set; }
  187. /// <summary>
  188. /// 追加奖励人开户银行
  189. /// </summary>
  190. [SugarColumn(ColumnDescription = "追加奖励人开户银行")]
  191. public string? AwardOpenBank { get; set; }
  192. /// <summary>
  193. /// 追加奖励人姓名
  194. /// </summary>
  195. [SugarColumn(ColumnDescription = "追加奖励人姓名")]
  196. public string? AwardName { get; set; }
  197. /// <summary>
  198. /// 追加奖励人银行卡号
  199. /// </summary>
  200. [SugarColumn(ColumnDescription = "追加奖励人银行卡号")]
  201. public string? AwardBankCardNo { get; set; }
  202. /// <summary>
  203. /// 追加奖励金额(元)
  204. /// </summary>
  205. [SugarColumn(ColumnDescription = "追加奖励金额(元)")]
  206. public double? AwardAmount { get; set; }
  207. /// <summary>
  208. /// 补充奖励类型
  209. /// </summary>
  210. [SugarColumn(ColumnDescription = "补充奖励类型")]
  211. public string? ReplenishTypeId { get; set; }
  212. /// <summary>
  213. /// 补充奖励类型
  214. /// </summary>
  215. [SugarColumn(ColumnDescription = "补充奖励类型")]
  216. public string? ReplenishTypeName { get; set; }
  217. /// <summary>
  218. /// 核实方式
  219. /// </summary>
  220. [SugarColumn(ColumnDescription = "核实方式")]
  221. public string? VerifyType { get; set; }
  222. /// <summary>
  223. /// 是否按清单检查
  224. /// </summary>
  225. [SugarColumn(ColumnDescription = "是否按清单检查")]
  226. public bool? IsCheckList { get; set; }
  227. #region 网格员回复
  228. /// <summary>
  229. /// 网格员系统交互日志
  230. /// </summary>
  231. [SugarColumn(ColumnDescription = "网格员系统交互日志")]
  232. public string? GuiderAccLog { get; set; }
  233. /// <summary>
  234. /// 网格员回复截止日期
  235. /// </summary>
  236. [SugarColumn(ColumnDescription = "网格员回复截止日期")]
  237. public DateTime? DeadLine { get; set; }
  238. /// <summary>
  239. /// 网格员是否办理
  240. /// </summary>
  241. [SugarColumn(ColumnDescription = "网格员是否办理")]
  242. public bool? IsDeal { get; set; }
  243. /// <summary>
  244. /// 网格E通编号
  245. /// </summary>
  246. [SugarColumn(ColumnDescription = "网格E通编号")]
  247. public string? NetworkENumber { get; set; }
  248. /// <summary>
  249. /// 网格员是否属实
  250. /// </summary>
  251. [SugarColumn(ColumnDescription = "网格员是否属实")]
  252. public bool? IsTruth { get; set; }
  253. /// <summary>
  254. /// 是否重复
  255. /// </summary>
  256. [SugarColumn(ColumnDescription = "是否重复")]
  257. public bool? IsRepetition { get; set; }
  258. /// <summary>
  259. /// 是否隐患
  260. /// </summary>
  261. [SugarColumn(ColumnDescription = "是否隐患")]
  262. public bool? IsDanger { get; set; }
  263. /// <summary>
  264. /// 网格员回复内容
  265. /// </summary>
  266. [SugarColumn(ColumnDescription = "网格员回复内容", Length = 2048)]
  267. public string? NetworkRemark { get; set; }
  268. /// <summary>
  269. /// 网格员办理时间
  270. /// </summary>
  271. [SugarColumn(ColumnDescription = "网格员办理时间")]
  272. public DateTime? ReplyDate { get; set; }
  273. /// <summary>
  274. /// 网格员姓名
  275. /// </summary>
  276. [SugarColumn(ColumnDescription = "网格员姓名")]
  277. public string? MemberName { get; set; }
  278. /// <summary>
  279. /// 网格员电话
  280. /// </summary>
  281. [SugarColumn(ColumnDescription = "网格员电话")]
  282. public string? MemberMobile { get; set; }
  283. /// <summary>
  284. /// 办理人账号
  285. /// </summary>
  286. [SugarColumn(ColumnDescription = "办理人账号")]
  287. public string? ReplyUserName { get; set; }
  288. /// <summary>
  289. /// 办理部门
  290. /// </summary>
  291. [SugarColumn(ColumnDescription = "办理部门")]
  292. public string? ReplyBMName { get; set; }
  293. /// <summary>
  294. /// 办理状态 1,7:流转 2:办结 3:退回 4:网格员签收 5:消息推送 6: 超时自动退单
  295. /// </summary>
  296. [SugarColumn(ColumnDescription ="网格员办理状态")]
  297. public EGuiderSystemReplyType? ReplyResultType { get; set; }
  298. #endregion
  299. /// <summary>
  300. /// 购气单位/个人名称
  301. /// </summary>
  302. [SugarColumn(ColumnDescription = "购气单位/个人名称")]
  303. public string? CompanyName { get; set; }
  304. /// <summary>
  305. /// 发送网格员系统时间
  306. /// </summary>
  307. [SugarColumn(ColumnDescription = "发送网格员系统时间")]
  308. public DateTime? SendGuidSystemTime { get; set; }
  309. /// <summary>
  310. /// 网格员系统回调时间
  311. /// </summary>
  312. [SugarColumn(ColumnDescription = "网格员系统回调时间")]
  313. public DateTime? GuidSystemCallBackTime { get; set; }
  314. /// <summary>
  315. /// 网格员系统是否回调
  316. /// </summary>
  317. [SugarColumn(ColumnDescription = "网格员系统是否回调", DefaultValue = "f")]
  318. public bool IsGuidSystemCallBack { get; set; }
  319. #region 重办信息
  320. /// <summary>
  321. /// 重办原因Id
  322. /// </summary>
  323. [SugarColumn(ColumnDescription = "重办原因Id")]
  324. public string? SpecialReasonId { get; set; }
  325. /// <summary>
  326. /// 重办原因
  327. /// </summary>
  328. [SugarColumn(ColumnDescription = "重办原因")]
  329. public string? SpecialReasonName { get; set; }
  330. #endregion
  331. /// <summary>
  332. /// 扩展字段
  333. /// 如果别的系统希望通过界面收集某个字段, 然后我们系统不需要使用, 就可以放这里.
  334. /// 第三方系统在获取我们系统工单时直接把这个字段数据返回即可
  335. /// </summary>
  336. [SugarColumn(ColumnDescription = "12345不使用的扩展字段,第三方系统使用")]
  337. public string? Attach { get; set; }
  338. }