index.ts 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. import type { FileItem } from '@/components/UploadFiles/types.ts';
  2. export interface ImageItem {
  3. url: string;
  4. name?: string;
  5. size?: number;
  6. file?: File;
  7. }
  8. export interface DisposalManagementListQuery {
  9. reporterId?: number;
  10. fixerId?: number;
  11. }
  12. export interface LossReportReportTaskQuery {
  13. taskStage?: string | null;
  14. }
  15. export interface DisposalManagementTableQuery extends DisposalManagementListQuery, LossReportReportTaskQuery {
  16. handleTaskIds: number[];
  17. reportDeptIds?: number[] | null;
  18. status?: string | null;
  19. }
  20. export interface LossRecordTableQuery {
  21. handleTaskIds: number[];
  22. handleDeptIds?: number[] | null;
  23. fixStatus?: string | null;
  24. isLoss?: number;
  25. fixerId?: number;
  26. reporterId?: number;
  27. }
  28. interface BasicResponse {
  29. deptName: string;
  30. taskStage: number;
  31. dueCompleteTime: string;
  32. }
  33. export interface DisposalManagementListResponse {
  34. id: number;
  35. handleTaskId: number;
  36. taskName: string;
  37. createdAt: string;
  38. updatedAt: string;
  39. dueCompleteTime: string;
  40. deptId: number;
  41. disasterAssessMaterials: string; // 灾后评估材料
  42. disasterReconstructMaterials: string; // 灾后重建材料
  43. }
  44. export interface UpdateDisasterHandleTaskQuery {
  45. id?: number;
  46. taskName?: string;
  47. disasterAssessMaterials?: string; // 灾后评估材料
  48. disasterReconstructMaterials?: string; // 灾后重建材料
  49. createdAt?: string;
  50. updatedAt?: string;
  51. isDeleted?: number;
  52. }
  53. export interface DisposalManagementCollapseListResponse<T> extends DisposalManagementListResponse {
  54. tableData: T[];
  55. }
  56. export interface disasterReportTaskInfoListResponse extends BasicResponse {
  57. id: number;
  58. status: number;
  59. reportPrincipalInfoList: { reportPrincipalId: number; reportPrincipalName: string; reportPrincipalStaffNo: string }[];
  60. userGroupList: string;
  61. }
  62. export interface disasterReportRecordDetailListResponse {
  63. id: number;
  64. buildingNo: string;
  65. floorNo: string;
  66. roomNo: string;
  67. affectedItems: string;
  68. updatedAt: string;
  69. responsibleDeptName: string;
  70. priority: string;
  71. fixStatus: number;
  72. isLoss: number;
  73. userGroupList: string;
  74. createdBy: string;
  75. images: string;
  76. fixerList: string;
  77. isFixPrincipal: boolean; //是否整改责任人
  78. safetyLevel: string;
  79. isAffectWork: number | null;
  80. estimatedLoss: string | null;
  81. description: string;
  82. remark: string;
  83. fixTaskId: number;
  84. responsibleDeptId: number;
  85. }
  86. export interface DisposalManagementTableResponse {
  87. handleTaskId: number;
  88. disasterReportTaskInfoList: disasterReportTaskInfoListResponse[];
  89. }
  90. export interface LossRecordTableResponse {
  91. handleTaskId: number;
  92. disasterReportRecordDetailList: disasterReportRecordDetailListResponse[];
  93. }
  94. export interface LossReportReportTaskResponse extends BasicResponse {
  95. id: number;
  96. handleTaskId: number;
  97. taskName: string;
  98. isReportPrincipal: boolean; //是否上报责任人
  99. updatedAt: string;
  100. reporterList: string; //上报责任人列表
  101. deptId: number;
  102. }
  103. export interface DisposalManagementCreateQuery {
  104. taskName: string;
  105. deptIds: number[];
  106. dueCompleteTime: string;
  107. reportRequirement: string;
  108. userGroupList: number[];
  109. isPush: boolean;
  110. }
  111. export interface DisposalManagementEditQuery {
  112. dueCompleteTime?: string;
  113. reportRequirement?: string;
  114. taskStage?: number;
  115. isPush?: number;
  116. status?: number;
  117. userGroupList?: number[];
  118. }
  119. export interface DisasterReportCreateQuery extends DisposalManagementCreateQuery {
  120. handleTaskId: number;
  121. }
  122. export interface DisasterReportEditQuery extends DisposalManagementEditQuery {
  123. id: number; //灾害处置上报任务id
  124. handleTaskId: number; //灾害处置任务id
  125. }
  126. export interface DisposalManagementRuleForm extends Omit<DisposalManagementCreateQuery, 'isPush'> {
  127. isPush: boolean | null;
  128. createdByName: string;
  129. }
  130. export interface DisposalManagementRuleFormEdit extends Omit<DisposalManagementCreateQuery, 'isPush' | 'deptIds'> {
  131. createdByName: string;
  132. deptName: string;
  133. isPush: number | null;
  134. }
  135. export interface LossReportItemFormData
  136. extends Omit<
  137. disasterReportRecordDetailListResponse,
  138. | 'id'
  139. | 'updatedAt'
  140. | 'responsibleDeptName'
  141. | 'fixStatus'
  142. | 'userGroupList'
  143. | 'images'
  144. | 'fixerList'
  145. | 'isFixPrincipal'
  146. | 'fixTaskId'
  147. | 'responsibleDeptId'
  148. > {
  149. reportTaskName: string;
  150. responsibleDeptId: number | null;
  151. userGroupList: number[];
  152. isPush: number;
  153. affectedRoom: string; //自己创造的一个数值,不要传给后端
  154. images: string[];
  155. uploadImages: File[];
  156. }
  157. export interface LossRecordFormData {
  158. reportTaskName: string;
  159. isLoss: number;
  160. buildingNo?: string;
  161. floorNo?: string;
  162. roomNo?: string;
  163. affectedItems?: string;
  164. images?: string[];
  165. description?: string;
  166. safetyLevel?: string;
  167. isAffectWork?: number;
  168. estimatedLoss?: string;
  169. priority?: string;
  170. responsibleDeptId?: number;
  171. remark?: string;
  172. userGroupList?: number[];
  173. isPush?: number;
  174. uploadImages?: File[];
  175. }
  176. export interface LossRecordCreateQuery extends Omit<LossRecordFormData, 'images'> {
  177. reportTaskId: number;
  178. images?: string[];
  179. }
  180. export interface LossRecordEditQuery extends Omit<LossRecordCreateQuery, 'reportTaskId'> {
  181. id: number;
  182. }
  183. export interface DisposalRectificationFormData {
  184. id?: number;
  185. fixStatus: string;
  186. fixMethod: string;
  187. fixDeadline: string;
  188. fixImages: string;
  189. fixMaterials: string;
  190. remark: string;
  191. createdBy: number | null;
  192. createdByName: string;
  193. uploadImages: File[];
  194. uploadFiles: FileItem[];
  195. createdAt?: string;
  196. }
  197. export interface DisposalRectificationCreateQuery extends DisposalRectificationFormData {
  198. fixTaskId: number;
  199. }
  200. export interface DisasterLossDetailQuery {
  201. handleTaskId: number;
  202. userIdByLossFix?: number;
  203. reportDeptId?: number;
  204. }
  205. export interface LossRecordListDetail {
  206. id: number;
  207. fixTaskId: number;
  208. affectedItems: string;
  209. buildingNo?: string;
  210. floorNo?: string;
  211. roomNo?: string;
  212. createdBy: number;
  213. updatedAt: string;
  214. safetyLevel: string;
  215. isAffectWork: number;
  216. estimatedLoss: string | null;
  217. description: string;
  218. images: string;
  219. remark: string;
  220. isLoss: number;
  221. responsibleDeptName: string;
  222. fixPrincipals: string;
  223. priority: string;
  224. fixRecordList: DisposalRectificationFormData[];
  225. }
  226. export interface ReportTaskListDetail {
  227. fixFinishCount: number;
  228. lossRecordCount: number;
  229. reportDeptId: number;
  230. reportDeptName: string;
  231. reportTaskId: number;
  232. lossRecordList: LossRecordListDetail[]; // 损失记录列表
  233. reportTime: string; //上报时间
  234. }
  235. export interface OverviewLossRecordInfo {
  236. needToReportDeptCount?: number; // 需上报单位数量
  237. reportedDeptCount?: number; // 已上报单位数量
  238. waitToReportDeptCount?: number; // 待上报单位数量
  239. overdueReportedDeptCount?: number; // 超期未上报单位数量
  240. lossRecordCount?: number; // 损失记录数量
  241. fixedLossCount?: number; // 已整改损失数量
  242. fixingLossCount?: number; // 整改中损失数量
  243. waitToFixLossCount?: number; // 待整改损失数量
  244. }
  245. export interface DisasterLossDetailResponse extends OverviewLossRecordInfo {
  246. handleTaskName: string;
  247. reportTaskList: ReportTaskListDetail[]; // 上报任务列表
  248. }