aq-fe-framework 0.1.156 → 0.1.157

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/dist/{chunk-JLT4BL7I.mjs → chunk-ZO7PLULO.mjs} +4 -4
  2. package/dist/{css.module-4ICLUKPO.module.css → components/index.css} +16 -29
  3. package/dist/components/index.mjs +2 -2
  4. package/dist/modules-features/index.css +100 -0
  5. package/dist/modules-features/index.mjs +5 -5
  6. package/package.json +1 -1
  7. package/dist/api/apiFactory.ts +0 -46
  8. package/dist/api/baseAxios.ts +0 -22
  9. package/dist/app/admin/(core)/core12196/page.tsx +0 -13
  10. package/dist/app/admin/(core)/core16209/page.tsx +0 -13
  11. package/dist/app/admin/(core)/core18256/page.tsx +0 -12
  12. package/dist/app/admin/(core)/core26965/page.tsx +0 -13
  13. package/dist/app/admin/(core)/core27311/page.tsx +0 -13
  14. package/dist/app/admin/(core)/core38677/page.tsx +0 -13
  15. package/dist/app/admin/(core)/core40207/page.tsx +0 -13
  16. package/dist/app/admin/(core)/core60524/page.tsx +0 -11
  17. package/dist/app/admin/(core)/core64229/page.tsx +0 -12
  18. package/dist/app/admin/(core)/core71678/page.tsx +0 -11
  19. package/dist/app/admin/(core)/core76318/page.tsx +0 -13
  20. package/dist/app/admin/(core)/core83092/page.tsx +0 -13
  21. package/dist/app/admin/[...slug]/page.tsx +0 -7
  22. package/dist/app/admin/error.tsx +0 -42
  23. package/dist/app/admin/layout.tsx +0 -21
  24. package/dist/app/admin/test/page.tsx +0 -44
  25. package/dist/app/auth/login/page.tsx +0 -14
  26. package/dist/app/globals.css +0 -59
  27. package/dist/app/layout.tsx +0 -39
  28. package/dist/app/page.tsx +0 -18
  29. package/dist/components/Aceternity/BoxesBackground/MyBoxes.tsx +0 -66
  30. package/dist/components/Aceternity/BoxesBackground/MyBoxesBackground.tsx +0 -31
  31. package/dist/components/ActionIcons/ActionIcon/MyActionIcon.tsx +0 -47
  32. package/dist/components/ActionIcons/ActionIconCRUD/MyActionIconDelete.tsx +0 -81
  33. package/dist/components/ActionIcons/ActionIconCRUD/MyActionIconUpdate.tsx +0 -68
  34. package/dist/components/ActionIcons/ActionIconCheck/MyActionIconCheck.tsx +0 -50
  35. package/dist/components/ActionIcons/ActionIconDownloadPDF/MyActionIconDownloadPDF.tsx +0 -13
  36. package/dist/components/ActionIcons/ActionIconModal/MyActionIconModal.tsx +0 -113
  37. package/dist/components/ActionIcons/ActionIconUpload/MyActionIconUpload.tsx +0 -19
  38. package/dist/components/ActionIcons/ActionIconViewPdf/MyActionIconViewPDF.tsx +0 -63
  39. package/dist/components/ActionIcons/SwitchTheme/MySwitchTheme.tsx +0 -36
  40. package/dist/components/AppSpotlight/MyAppSpotlight.tsx +0 -112
  41. package/dist/components/Buttons/Anchor/MyAnchorViewPDF.tsx +0 -46
  42. package/dist/components/Buttons/Button/MyButton.tsx +0 -90
  43. package/dist/components/Buttons/ButtonCRUD/AQButtonCreateByImportFile.tsx +0 -81
  44. package/dist/components/Buttons/ButtonCRUD/AQButtonExportData.tsx +0 -75
  45. package/dist/components/Buttons/ButtonCRUD/MyButtonCreate.tsx +0 -68
  46. package/dist/components/Buttons/ButtonImport/MyButtonImport.tsx +0 -29
  47. package/dist/components/Buttons/ButtonImport/SelectFieldModal.tsx +0 -100
  48. package/dist/components/Buttons/ButtonImport/SelectFileModal.tsx +0 -81
  49. package/dist/components/Buttons/ButtonImport/useS_ButtonImport.ts +0 -196
  50. package/dist/components/Buttons/ButtonModal/AQSelectTableByOpenModal.tsx +0 -71
  51. package/dist/components/Buttons/ButtonModal/MyButtonModal.tsx +0 -117
  52. package/dist/components/Buttons/ButtonPrintPDF/MyButtonPrintPDF.tsx +0 -37
  53. package/dist/components/Buttons/ButtonPrintPDFTable/MyButtonPrintTablePDF.tsx +0 -174
  54. package/dist/components/Buttons/ButtonRouterBack/MyButtonRouterBack.tsx +0 -29
  55. package/dist/components/Buttons/ButtonViewPDF/MyButtonViewPDF.tsx +0 -121
  56. package/dist/components/Calendar/MyCalendar.tsx +0 -118
  57. package/dist/components/CenterFull/MyCenterFull.tsx +0 -10
  58. package/dist/components/Checkbox/MyCheckbox.tsx +0 -9
  59. package/dist/components/Combobox/Select/MySelect.tsx +0 -12
  60. package/dist/components/DataDisplay/Card/AQCard.tsx +0 -49
  61. package/dist/components/DataDisplay/CardInformation/MyCardInformation.tsx +0 -77
  62. package/dist/components/DataDisplay/DataTable/MyDataTable.tsx +0 -184
  63. package/dist/components/DataDisplay/IconText/MyIconText.tsx +0 -17
  64. package/dist/components/DataDisplay/KeyLabel/MyKeyLabel.tsx +0 -15
  65. package/dist/components/DataDisplay/NumberFormatter/MyNumberFormatter.tsx +0 -9
  66. package/dist/components/DataDisplay/StatCard/AQStatCard1.tsx +0 -68
  67. package/dist/components/FaviconSetter/FaviconSetter.tsx +0 -33
  68. package/dist/components/Inputs/DateInput/MyDateInput.tsx +0 -11
  69. package/dist/components/Inputs/Fieldset/MyFieldset.tsx +0 -32
  70. package/dist/components/Inputs/FileInput/MyFileInput.tsx +0 -12
  71. package/dist/components/Inputs/NumberInput/MyNumberInput.tsx +0 -12
  72. package/dist/components/Inputs/TextArea/MyTextArea.tsx +0 -11
  73. package/dist/components/Inputs/TextEditor/MyTextEditor.tsx +0 -191
  74. package/dist/components/Inputs/TextInput/MyTextInput.tsx +0 -30
  75. package/dist/components/Layouts/BasicAppShell/BasicAppShell.tsx +0 -357
  76. package/dist/components/Layouts/BasicAppShell/css.module.css +0 -62
  77. package/dist/components/Layouts/BasicAppShell/useS_BasicAppShell.ts +0 -64
  78. package/dist/components/Layouts/Container/MyContainer.tsx +0 -16
  79. package/dist/components/Layouts/FlexColumn/MyFlexColumn.tsx +0 -14
  80. package/dist/components/Layouts/FlexEnd/MyFlexEnd.tsx +0 -14
  81. package/dist/components/Layouts/FlexRow/MyFlexRow.tsx +0 -14
  82. package/dist/components/Layouts/HeaderMegaMenu/HeaderMegaMenu.tsx +0 -147
  83. package/dist/components/Layouts/HeaderMegaMenu/HeaderMegaMenuStore.ts +0 -19
  84. package/dist/components/Layouts/HeaderMegaMenu/css.module.css +0 -50
  85. package/dist/components/Layouts/HtmlWrapper/MyHtmlWrapper.tsx +0 -29
  86. package/dist/components/Layouts/PageContent/MyPageContent.tsx +0 -67
  87. package/dist/components/Layouts/Tab/MyTab.tsx +0 -33
  88. package/dist/components/Loaders/MyCardioLoader.tsx +0 -12
  89. package/dist/components/RESTAPIComponents/DataTableSelect/MyDataTableSelect.tsx +0 -61
  90. package/dist/components/RESTAPIComponents/SelectAPIGet/MySelectAPIGet.tsx +0 -37
  91. package/dist/components/ScheduleX/MyScheduleX.tsx +0 -58
  92. package/dist/components/Skeletons/SkeletonTable/MySkeletonTable.tsx +0 -9
  93. package/dist/components/index.ts +0 -62
  94. package/dist/constants/array/daysOfWeek.ts +0 -9
  95. package/dist/constants/enum/ENUM_EMAILCONFIG.ts +0 -6
  96. package/dist/constants/enum/global.ts +0 -26
  97. package/dist/constants/object/color.ts +0 -5
  98. package/dist/constants/object/documentTypes.ts +0 -8
  99. package/dist/css.module-P45UW6UZ.module.css +0 -4
  100. package/dist/data/menuData.ts +0 -31
  101. package/dist/hooks/custom-hooks/useC_MutationAction.tsx +0 -36
  102. package/dist/hooks/index.ts +0 -2
  103. package/dist/hooks/query/AQ/useQ_AQ_GetAQModule.ts +0 -14
  104. package/dist/interfaces/EmailConfig.ts +0 -10
  105. package/dist/interfaces/IAQModule.ts +0 -21
  106. package/dist/interfaces/base.ts +0 -9
  107. package/dist/interfaces/global-interface/IAQSSO.ts +0 -15
  108. package/dist/interfaces/global-interface/IAQSyncData.ts +0 -9
  109. package/dist/interfaces/global-interface/IAcademicYear.ts +0 -12
  110. package/dist/interfaces/global-interface/IChangePassWord.ts +0 -8
  111. package/dist/interfaces/global-interface/IComplaintProccess.ts +0 -9
  112. package/dist/interfaces/global-interface/ICreateAccount.ts +0 -24
  113. package/dist/interfaces/global-interface/IDocument.ts +0 -25
  114. package/dist/interfaces/global-interface/IDocumentAttribute.ts +0 -12
  115. package/dist/interfaces/global-interface/IEvent.ts +0 -30
  116. package/dist/interfaces/global-interface/IEventComplaint.ts +0 -20
  117. package/dist/interfaces/global-interface/IEventFillter.ts +0 -14
  118. package/dist/interfaces/global-interface/IFile.ts +0 -8
  119. package/dist/interfaces/global-interface/IImportStudentPaticipation.ts +0 -8
  120. package/dist/interfaces/global-interface/IPagePermission.ts +0 -12
  121. package/dist/interfaces/global-interface/IRolePermission.ts +0 -7
  122. package/dist/interfaces/global-interface/ISRMUserinfo.ts +0 -35
  123. package/dist/interfaces/global-interface/IScientificProfileProjectUser.ts +0 -15
  124. package/dist/interfaces/global-interface/IScientificProfileResearchGroup.ts +0 -15
  125. package/dist/interfaces/global-interface/IScientificProfileResearchGroupUser.ts +0 -14
  126. package/dist/interfaces/global-interface/IScientificProfileResearchProject.ts +0 -21
  127. package/dist/interfaces/global-interface/ISignIn.ts +0 -7
  128. package/dist/interfaces/global-interface/ISystemCatalogAcademicYear.ts +0 -15
  129. package/dist/interfaces/global-interface/ISystemCatalogDomainCategory.ts +0 -11
  130. package/dist/interfaces/global-interface/ISystemCatalogProjectLevelCategory.ts +0 -11
  131. package/dist/interfaces/global-interface/ISystemCatalogProjectTypeCategory.ts +0 -11
  132. package/dist/interfaces/global-interface/ISystemCatalogRoleActivity.ts +0 -11
  133. package/dist/interfaces/global-interface/ISystemCatalogTaskCategory.ts +0 -11
  134. package/dist/interfaces/global-interface/ISystemManagementAcademicHistory.ts +0 -31
  135. package/dist/interfaces/global-interface/ISystemManagementProfessionalWorkHistory.ts +0 -14
  136. package/dist/interfaces/global-interface/ISystemManagementPublishedScientificWork.ts +0 -14
  137. package/dist/interfaces/global-interface/ISystemManagementRoleGroup.ts +0 -12
  138. package/dist/interfaces/global-interface/ISystemManagementRoleGroupMenuPermission.ts +0 -18
  139. package/dist/interfaces/global-interface/ISystemManagementScientificResearchProject.ts +0 -16
  140. package/dist/interfaces/global-interface/ISystemManagementUserMenuPermission.ts +0 -18
  141. package/dist/interfaces/global-interface/IUpdateAccount.ts +0 -15
  142. package/dist/interfaces/global-interface/IUser.ts +0 -21
  143. package/dist/interfaces/global-interface/IUserPermission.ts +0 -7
  144. package/dist/lib/utils.ts +0 -6
  145. package/dist/modules-features/admin/core/MainDashboard/BarChart_CourseStatus.tsx +0 -87
  146. package/dist/modules-features/admin/core/MainDashboard/BarChart_ExamStatus.tsx +0 -65
  147. package/dist/modules-features/admin/core/MainDashboard/BarChart_RevenueByAcademicYear.tsx +0 -82
  148. package/dist/modules-features/admin/core/MainDashboard/BarChart_StudentStatusIn30Days.tsx +0 -67
  149. package/dist/modules-features/admin/core/MainDashboard/HBarChart_CourseDropOutPercentage.tsx +0 -77
  150. package/dist/modules-features/admin/core/MainDashboard/HBarChart_CourseProgressPercentage.tsx +0 -77
  151. package/dist/modules-features/admin/core/MainDashboard/LineChart_RevenueIn12Months.tsx +0 -78
  152. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalRevenueByDiscountIn3Months.tsx +0 -69
  153. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalRevenueByVoucherIn3Months.tsx +0 -69
  154. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalStudentIn12Months.tsx +0 -64
  155. package/dist/modules-features/admin/core/MainDashboard/ViewDiscountStat.tsx +0 -311
  156. package/dist/modules-features/admin/core/MainDashboard/ViewVoucherStat.tsx +0 -311
  157. package/dist/modules-features/admin/core/core12196/F_core12196.tsx +0 -20
  158. package/dist/modules-features/admin/core/core12196/F_core12196_Create.tsx +0 -101
  159. package/dist/modules-features/admin/core/core12196/F_core12196_Delete.tsx +0 -19
  160. package/dist/modules-features/admin/core/core12196/F_core12196_Read.tsx +0 -165
  161. package/dist/modules-features/admin/core/core12196/F_core12196_Update.tsx +0 -112
  162. package/dist/modules-features/admin/core/core16209/F_core16209.tsx +0 -108
  163. package/dist/modules-features/admin/core/core16209/F_core16209_Create.tsx +0 -112
  164. package/dist/modules-features/admin/core/core16209/F_core16209_Delete.tsx +0 -17
  165. package/dist/modules-features/admin/core/core16209/F_core16209_Update.tsx +0 -114
  166. package/dist/modules-features/admin/core/core18256/F_core18256.tsx +0 -29
  167. package/dist/modules-features/admin/core/core18256/F_core18256_Create.tsx +0 -34
  168. package/dist/modules-features/admin/core/core18256/F_core18256_Delete.tsx +0 -14
  169. package/dist/modules-features/admin/core/core18256/F_core18256_Read.tsx +0 -59
  170. package/dist/modules-features/admin/core/core18256/F_core18256_Select.tsx +0 -40
  171. package/dist/modules-features/admin/core/core18256/F_core18256_Update.tsx +0 -22
  172. package/dist/modules-features/admin/core/core26965/F_core26965.tsx +0 -17
  173. package/dist/modules-features/admin/core/core26965/F_core26965_Create.tsx +0 -106
  174. package/dist/modules-features/admin/core/core26965/F_core26965_Delete.tsx +0 -19
  175. package/dist/modules-features/admin/core/core26965/F_core26965_Read.tsx +0 -165
  176. package/dist/modules-features/admin/core/core26965/F_core26965_Update.tsx +0 -112
  177. package/dist/modules-features/admin/core/core27311/F_core27311.tsx +0 -21
  178. package/dist/modules-features/admin/core/core27311/F_core27311_Create.tsx +0 -109
  179. package/dist/modules-features/admin/core/core27311/F_core27311_Delete.tsx +0 -19
  180. package/dist/modules-features/admin/core/core27311/F_core27311_Read.tsx +0 -165
  181. package/dist/modules-features/admin/core/core27311/F_core27311_Update.tsx +0 -113
  182. package/dist/modules-features/admin/core/core35923/F_core35923.tsx +0 -46
  183. package/dist/modules-features/admin/core/core38677/F_core38677.tsx +0 -28
  184. package/dist/modules-features/admin/core/core38677/F_core38677_ReadUser.tsx +0 -79
  185. package/dist/modules-features/admin/core/core38677/F_core38677_Save.tsx +0 -52
  186. package/dist/modules-features/admin/core/core38677/F_core38677_ViewMenuPermissions.tsx +0 -264
  187. package/dist/modules-features/admin/core/core40207/F_core40207.tsx +0 -9
  188. package/dist/modules-features/admin/core/core40207/F_core40207_Create.tsx +0 -81
  189. package/dist/modules-features/admin/core/core40207/F_core40207_Delete.tsx +0 -17
  190. package/dist/modules-features/admin/core/core40207/F_core40207_Read.tsx +0 -98
  191. package/dist/modules-features/admin/core/core40207/F_core40207_Update.tsx +0 -83
  192. package/dist/modules-features/admin/core/core47643/F_core47643.tsx +0 -10
  193. package/dist/modules-features/admin/core/core47643/F_core47643_Delete.tsx +0 -13
  194. package/dist/modules-features/admin/core/core47643/F_core47643_Form.tsx +0 -34
  195. package/dist/modules-features/admin/core/core47643/F_core47643_Read.tsx +0 -57
  196. package/dist/modules-features/admin/core/core60524/F_core60524.tsx +0 -13
  197. package/dist/modules-features/admin/core/core60524/F_core60524_Form.tsx +0 -111
  198. package/dist/modules-features/admin/core/core60524/F_core60524_Save.tsx +0 -56
  199. package/dist/modules-features/admin/core/core60524/useS_core60524.ts +0 -16
  200. package/dist/modules-features/admin/core/core64229/F_core64229.tsx +0 -7
  201. package/dist/modules-features/admin/core/core64229/F_core64229_Delete.tsx +0 -21
  202. package/dist/modules-features/admin/core/core64229/F_core64229_Form.tsx +0 -95
  203. package/dist/modules-features/admin/core/core64229/F_core64229_Read.tsx +0 -67
  204. package/dist/modules-features/admin/core/core71678/F_core71678.tsx +0 -8
  205. package/dist/modules-features/admin/core/core71678/F_core71678_ChangePermission.tsx +0 -117
  206. package/dist/modules-features/admin/core/core71678/F_core71678_Create.tsx +0 -61
  207. package/dist/modules-features/admin/core/core71678/F_core71678_Delete.tsx +0 -16
  208. package/dist/modules-features/admin/core/core71678/F_core71678_Read.tsx +0 -92
  209. package/dist/modules-features/admin/core/core71678/F_core71678_Update.tsx +0 -49
  210. package/dist/modules-features/admin/core/core76318/F_core76318.tsx +0 -9
  211. package/dist/modules-features/admin/core/core76318/F_core76318_Create.tsx +0 -89
  212. package/dist/modules-features/admin/core/core76318/F_core76318_Delete.tsx +0 -17
  213. package/dist/modules-features/admin/core/core76318/F_core76318_Read.tsx +0 -104
  214. package/dist/modules-features/admin/core/core76318/F_core76318_Update.tsx +0 -89
  215. package/dist/modules-features/admin/core/core83092/F_core83092.tsx +0 -27
  216. package/dist/modules-features/admin/core/core83092/F_core83092_ReadUser.tsx +0 -85
  217. package/dist/modules-features/admin/core/core83092/F_core83092_Save.tsx +0 -52
  218. package/dist/modules-features/admin/core/core83092/F_core83092_ViewMenuPermissions.tsx +0 -263
  219. package/dist/modules-features/admin/core/core83092/useS_core83092.tsx +0 -70
  220. package/dist/modules-features/authenticate/F_authenticate_Login/F_authenticate_Login.tsx +0 -154
  221. package/dist/modules-features/authenticate/F_authenticate_Login/css.module.css +0 -4
  222. package/dist/modules-features/authenticate/F_authenticate_Logout.tsx +0 -22
  223. package/dist/modules-features/authenticate/F_authenticate_SplashPage.tsx +0 -21
  224. package/dist/modules-features/authenticate/useS_authenticate.ts +0 -23
  225. package/dist/modules-features/index.ts +0 -79
  226. package/dist/providers/MyMantineProvider.tsx +0 -140
  227. package/dist/providers/MyReactQueryProvider.tsx +0 -24
  228. package/dist/providers/Provider.tsx +0 -13
  229. package/dist/providers/mantine.module.css +0 -21
  230. package/dist/stores/CreateGenericStore.ts +0 -23
  231. package/dist/stores/index.ts +0 -1
  232. package/dist/types/types.ts +0 -16
  233. package/dist/utils/index.ts +0 -9
  234. package/dist/utils/utils_converter.ts +0 -39
  235. package/dist/utils/utils_currency.ts +0 -5
  236. package/dist/utils/utils_date.ts +0 -34
  237. package/dist/utils/utils_excel.ts +0 -128
  238. package/dist/utils/utils_file.ts +0 -61
  239. package/dist/utils/utils_notification.ts +0 -46
  240. package/dist/utils/utils_pdf.ts +0 -21
  241. package/dist/utils/utils_time.ts +0 -15
  242. package/dist/utils/utils_validateForm.ts +0 -9
@@ -1,101 +0,0 @@
1
- "use client";
2
- import baseAxios from "@/api/baseAxios";
3
- import { MyFileInput, MyNumberInput } from "@/components";
4
- import { MyButtonCreate } from "@/components/Buttons/ButtonCRUD/MyButtonCreate";
5
- import { MyDateInput } from "@/components/Inputs/DateInput/MyDateInput";
6
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput";
7
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
8
- import { F_core18256_Select } from "@/modules-features/admin/core/core18256/F_core18256_Select";
9
- import { utils_file_fileToAQDocumentType } from "@/utils/utils_file";
10
- import { useForm } from "@mantine/form";
11
- interface IDocument {
12
- path?: string;
13
- orderBy?: number;
14
- documentType?: number;
15
- promulgateDate?: Date;
16
- decisionCode?: string;
17
- departmentName?: string;
18
- description?: string;
19
- startDate?: Date;
20
- endDate?: Date;
21
- conclusion?: string;
22
- note?: string;
23
- documentAttributeId?: number;
24
- documentAttributeName?: string;
25
- isCycleCheck?: boolean;
26
- meetingDate?: Date;
27
- fileDetail?: {
28
- fileBase64String?: string;
29
- fileExtension?: string;
30
- fileName?: string;
31
- };
32
- id?: number;
33
- code?: string;
34
- name?: string;
35
- concurrencyStamp?: string;
36
- isEnabled?: boolean;
37
- ngayChinhSua?: Date;
38
- nguoiChinhSua?: string;
39
- }
40
- interface I extends IDocument {
41
- file?: File;
42
- }
43
- export function F_core12196_Create({ FormTypeId }: { FormTypeId: number }) {
44
- const form = useForm<I>({
45
- mode: "uncontrolled",
46
- validate: {
47
- decisionCode: (value) =>
48
- value ? null : "Số quy định không được để trống",
49
- promulgateDate: (value) =>
50
- value ? null : "Ngày ban hành không được để trống",
51
- name: (value) => (value ? null : "Tên tài liệu không được để trống"),
52
- documentAttributeId: (value) =>
53
- value ? null : "Loại văn bản không được để trống",
54
- file: (value) => (value ? null : "Tệp đính kèm không được để trống"),
55
- },
56
- });
57
- return (
58
- <MyButtonCreate
59
- objectName="Văn bản quy định tổ chức"
60
- form={form}
61
- onSubmit={async (values) => {
62
- return await baseAxios.post("/Document/create", {
63
- ...values,
64
- DocumentType: OBJECT_DOCUMENT_TYPES.Form,
65
- fileDetail: await utils_file_fileToAQDocumentType(values.file!),
66
- });
67
- }}
68
- >
69
- <MyTextInput
70
- withAsterisk
71
- label="Số quy định"
72
- {...form.getInputProps("decisionCode")}
73
- />
74
- <MyDateInput
75
- withAsterisk
76
- label="Ngày ban hành"
77
- {...form.getInputProps("promulgateDate")}
78
- />
79
- <MyTextInput
80
- withAsterisk
81
- label="Tên tài liệu"
82
- {...form.getInputProps("name")}
83
- />
84
- <F_core18256_Select
85
- withAsterisk
86
- label="Loại văn bản"
87
- documentTypeId={FormTypeId}
88
- {...form.getInputProps("documentAttributeId")}
89
- />
90
- <MyFileInput
91
- withAsterisk
92
- label="Văn bản"
93
- {...form.getInputProps("file")}
94
- />
95
- <MyNumberInput
96
- label="Thứ tự hiển thị trên danh sách"
97
- {...form.getInputProps("orderBy")}
98
- />
99
- </MyButtonCreate>
100
- );
101
- }
@@ -1,19 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { MyActionIconDelete } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconDelete";
3
-
4
- export function F_core12196_Delete({
5
- id,
6
- contextData,
7
- }: {
8
- id: number;
9
- contextData: string;
10
- }) {
11
- return (
12
- <MyActionIconDelete
13
- contextData={contextData}
14
- onSubmit={async () =>
15
- await baseAxios.post("/Document/delete", { id: id })
16
- }
17
- />
18
- );
19
- }
@@ -1,165 +0,0 @@
1
- "use client";
2
- import { MyFlexColumn } from "@/components/Layouts/FlexColumn/MyFlexColumn";
3
- import { Accordion, Blockquote, Paper, Space } from "@mantine/core";
4
- import { useQuery } from "@tanstack/react-query";
5
-
6
- import baseAxios from "@/api/baseAxios";
7
- import { MyButtonViewPDF } from "@/components/Buttons/ButtonViewPDF/MyButtonViewPDF";
8
- import { MyCenterFull } from "@/components/CenterFull/MyCenterFull";
9
- import { MyDataTable } from "@/components/DataDisplay/DataTable/MyDataTable";
10
- import { MyPageContent } from "@/components/Layouts/PageContent/MyPageContent";
11
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
12
- import { U0DateToDDMMYYYString } from "@/utils/utils_date";
13
- import { MRT_ColumnDef } from "mantine-react-table";
14
- import { useMemo } from "react";
15
-
16
- import { F_core12196_Create } from "./F_core12196_Create";
17
- import { F_core12196_Delete } from "./F_core12196_Delete";
18
- import { F_core12196_Update } from "./F_core12196_Update";
19
- import { MyFlexEnd } from "@/components";
20
- interface I {
21
- documentType?: number;
22
- id?: number;
23
- code?: string;
24
- name?: string;
25
- concurrencyStamp?: string;
26
- isEnabled?: boolean;
27
- }
28
-
29
- export function F_core12196_Read({ FormTypeId }: { FormTypeId: number }) {
30
- const documentAttributeQuery = useQuery<I[]>({
31
- queryKey: ["F_core12196_Read", FormTypeId],
32
- queryFn: async () => {
33
- const result = await baseAxios.get("/DocumentAttribute/GetByType?", {
34
- params: { documentType: FormTypeId },
35
- });
36
- return result.data?.data || [];
37
- },
38
- });
39
- if (documentAttributeQuery.isLoading) return "Loading...";
40
- if (documentAttributeQuery.isError) return "có lỗi xảy ra!";
41
- if (documentAttributeQuery.data?.length == 0)
42
- return <Blockquote color="yellow">Chưa có loại văn bản</Blockquote>;
43
- return (
44
- <MyFlexColumn>
45
- <Accordion
46
- variant="contained"
47
- defaultValue={documentAttributeQuery.data?.map(
48
- (item) => item.id?.toString()!
49
- )}
50
- multiple
51
- >
52
- {documentAttributeQuery.data?.map((item, idx) => (
53
- <SubRead
54
- key={idx}
55
- name={item.name!}
56
- documentType={item.id!}
57
- FormTypeId={FormTypeId}
58
- />
59
- ))}
60
- </Accordion>
61
- </MyFlexColumn>
62
- );
63
- }
64
-
65
- function SubRead({
66
- name,
67
- documentType,
68
- FormTypeId,
69
- }: {
70
- name: string;
71
- documentType: number;
72
- FormTypeId: number;
73
- }) {
74
- interface I {
75
- path?: string;
76
- orderBy?: number;
77
- documentType?: number;
78
- promulgateDate?: Date;
79
- decisionCode?: string;
80
- departmentName?: string;
81
- description?: string;
82
- startDate?: Date;
83
- endDate?: Date;
84
- conclusion?: string;
85
- note?: string;
86
- documentAttributeId?: number;
87
- documentAttributeName?: string;
88
- isCycleCheck?: boolean;
89
- meetingDate?: Date;
90
- fileDetail?: {
91
- fileBase64String?: string;
92
- fileExtension?: string;
93
- fileName?: string;
94
- };
95
- id?: number;
96
- code?: string;
97
- name?: string;
98
- concurrencyStamp?: string;
99
- isEnabled?: boolean;
100
- ngayChinhSua?: Date;
101
- nguoiChinhSua?: string;
102
- }
103
- const documentQuery = useQuery<I[]>({
104
- queryKey: ["SF2_3Read" + documentType],
105
- queryFn: async () => {
106
- const result = await baseAxios.get(
107
- `/Document/GetByDocumentAttribute?id=${documentType}`
108
- );
109
- return result.data.data;
110
- },
111
- });
112
- const columns = useMemo<MRT_ColumnDef<I>[]>(
113
- () => [
114
- {
115
- header: "Số quy định",
116
- accessorKey: "decisionCode",
117
- },
118
- {
119
- header: "Ngày ban hành",
120
- accessorFn: (row) =>
121
- U0DateToDDMMYYYString(new Date(row.promulgateDate!)),
122
- },
123
- {
124
- header: "Tên tài liệu",
125
- accessorKey: "name",
126
- },
127
- {
128
- header: "File",
129
- accessorFn: (row) => {
130
- return (
131
- <MyCenterFull>
132
- <MyButtonViewPDF id={row.id} />
133
- </MyCenterFull>
134
- );
135
- },
136
- },
137
- ],
138
- []
139
- );
140
- if (documentQuery.isLoading) return "Loading...";
141
- if (documentQuery.isError) return "Error!";
142
- return (
143
- <Accordion.Item value={documentType.toString()}>
144
- <Accordion.Control>{name}</Accordion.Control>
145
- <Accordion.Panel>
146
- <MyDataTable
147
- columns={columns}
148
- data={documentQuery.data!}
149
- renderRowActions={({ row }) => (
150
- <MyCenterFull>
151
- <F_core12196_Update
152
- FormTypeId={FormTypeId}
153
- values={row.original!}
154
- />
155
- <F_core12196_Delete
156
- id={row.original.id!}
157
- contextData={row.original.decisionCode!}
158
- />
159
- </MyCenterFull>
160
- )}
161
- />
162
- </Accordion.Panel>
163
- </Accordion.Item>
164
- );
165
- }
@@ -1,112 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { MyActionIconUpdate } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconUpdate";
3
- import { MyDateInput } from "@/components/Inputs/DateInput/MyDateInput";
4
- import { MyFileInput } from "@/components/Inputs/FileInput/MyFileInput";
5
- import { MyNumberInput } from "@/components/Inputs/NumberInput/MyNumberInput";
6
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput";
7
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
8
- import { F_core18256_Select } from "@/modules-features/admin/core/core18256/F_core18256_Select";
9
- import { utils_file_fileToAQDocumentType } from "@/utils/utils_file";
10
- import { useForm } from "@mantine/form";
11
- interface IDocument {
12
- path?: string;
13
- orderBy?: number;
14
- documentType?: number;
15
- promulgateDate?: Date;
16
- decisionCode?: string;
17
- departmentName?: string;
18
- description?: string;
19
- startDate?: Date;
20
- endDate?: Date;
21
- conclusion?: string;
22
- note?: string;
23
- documentAttributeId?: number;
24
- documentAttributeName?: string;
25
- isCycleCheck?: boolean;
26
- meetingDate?: Date;
27
- fileDetail?: {
28
- fileBase64String?: string;
29
- fileExtension?: string;
30
- fileName?: string;
31
- };
32
- id?: number;
33
- code?: string;
34
- name?: string;
35
- concurrencyStamp?: string;
36
- isEnabled?: boolean;
37
- ngayChinhSua?: Date;
38
- nguoiChinhSua?: string;
39
- }
40
- interface I extends IDocument {
41
- file?: File;
42
- }
43
- export function F_core12196_Update({
44
- values,
45
- FormTypeId,
46
- }: {
47
- values: I;
48
- FormTypeId: number;
49
- }) {
50
- const form = useForm<I>({
51
- initialValues: {
52
- ...values,
53
- file: new File(
54
- [],
55
- values.path?.split("/")[values.path.split("/").length - 1]!
56
- ),
57
- promulgateDate: new Date(values.promulgateDate!),
58
- },
59
- validate: {
60
- decisionCode: (value) =>
61
- value ? null : "Số quy định không được để trống",
62
- promulgateDate: (value) =>
63
- value ? null : "Ngày ban hành không được để trống",
64
- name: (value) => (value ? null : "Tên tài liệu không được để trống"),
65
- documentAttributeId: (value) =>
66
- value ? null : "Loại văn bản không được để trống",
67
- file: (value) => (value ? null : "Tệp đính kèm không được để trống"),
68
- },
69
- });
70
- return (
71
- <MyActionIconUpdate
72
- form={form}
73
- onSubmit={async (values) => {
74
- return await baseAxios.post("/Document/Update", {
75
- ...values,
76
- fileDetail: await utils_file_fileToAQDocumentType(values.file!),
77
- });
78
- }}
79
- >
80
- <MyTextInput
81
- withAsterisk
82
- label="Số quy định"
83
- {...form.getInputProps("decisionCode")}
84
- />
85
- <MyDateInput
86
- withAsterisk
87
- label="Ngày ban hành"
88
- {...form.getInputProps("promulgateDate")}
89
- />
90
- <MyTextInput
91
- withAsterisk
92
- label="Tên tài liệu"
93
- {...form.getInputProps("name")}
94
- />
95
- <F_core18256_Select
96
- withAsterisk
97
- label="Loại văn bản"
98
- documentTypeId={FormTypeId}
99
- {...form.getInputProps("documentAttributeId")}
100
- />
101
- <MyFileInput
102
- withAsterisk
103
- label="Văn bản"
104
- {...form.getInputProps("file")}
105
- />
106
- <MyNumberInput
107
- label="Thứ tự hiển thị trên danh sách"
108
- {...form.getInputProps("orderBy")}
109
- />
110
- </MyActionIconUpdate>
111
- );
112
- }
@@ -1,108 +0,0 @@
1
- "use client";
2
- import baseAxios from "@/api/baseAxios";
3
- import { MyPageContent } from "@/components";
4
- import { MyButtonViewPDF } from "@/components/Buttons/ButtonViewPDF/MyButtonViewPDF";
5
- import { MyCenterFull } from "@/components/CenterFull/MyCenterFull";
6
- import { MyDataTable } from "@/components/DataDisplay/DataTable/MyDataTable";
7
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
8
- import { U0DateToDDMMYYYString } from "@/utils/utils_date";
9
- import { useQuery } from "@tanstack/react-query";
10
- import { MRT_ColumnDef } from "mantine-react-table";
11
- import { useMemo } from "react";
12
- import { F_core16209_Create } from "./F_core16209_Create";
13
- import { F_core16209_Delete } from "./F_core16209_Delete";
14
- import { F_core16209_Update } from "./F_core16209_Update";
15
-
16
- interface I {
17
- path?: string;
18
- orderBy?: number;
19
- documentType?: number;
20
- promulgateDate?: Date;
21
- decisionCode?: string;
22
- departmentName?: string;
23
- description?: string;
24
- startDate?: Date;
25
- endDate?: Date;
26
- conclusion?: string;
27
- note?: string;
28
- documentAttributeId?: number;
29
- documentAttributeName?: string;
30
- isCycleCheck?: boolean;
31
- meetingDate?: Date;
32
- fileDetail?: {
33
- fileBase64String?: string;
34
- fileExtension?: string;
35
- fileName?: string;
36
- };
37
- id?: number;
38
- code?: string;
39
- name?: string;
40
- concurrencyStamp?: string;
41
- isEnabled?: boolean;
42
- ngayChinhSua?: Date;
43
- nguoiChinhSua?: string;
44
- }
45
-
46
- export function F_core16209({ RefinementTypeId }: { RefinementTypeId: number }) {
47
- const query = useQuery<I[]>({
48
- queryKey: ["F_core16209_Read"],
49
- queryFn: async () => {
50
- const result = await baseAxios.get(
51
- `/Document/GetByType?documentType=${RefinementTypeId}`
52
- );
53
- return result.data?.data || [];
54
- },
55
- });
56
- const columns = useMemo<MRT_ColumnDef<I>[]>(
57
- () => [
58
- {
59
- header: "Đơn vị yêu cầu",
60
- accessorKey: "departmentName",
61
- },
62
- {
63
- header: "Nội dung cải tiến",
64
- accessorKey: "description",
65
- },
66
- {
67
- header: "Ngày bắt đầu",
68
- accessorFn: (row) => U0DateToDDMMYYYString(new Date(row.startDate!)),
69
- },
70
- {
71
- header: "Ngày kết thúc",
72
- accessorFn: (row) => U0DateToDDMMYYYString(new Date(row.endDate!)),
73
- },
74
- {
75
- header: "File",
76
- accessorFn: (row) => {
77
- return (
78
- <MyCenterFull>
79
- <MyButtonViewPDF id={row.id} />
80
- </MyCenterFull>
81
- );
82
- },
83
- },
84
- ],
85
- []
86
- );
87
-
88
- if (query.isLoading) return "Loading...";
89
- if (query.isError) return "có lỗi xảy ra!";
90
- return (
91
- <MyDataTable
92
- columns={columns}
93
- data={query.data!}
94
- renderTopToolbarCustomActions={() => <F_core16209_Create RefinementTypeId={RefinementTypeId} />}
95
- renderRowActions={({ row }) => {
96
- return (
97
- <MyCenterFull>
98
- <F_core16209_Update values={row.original} />
99
- <F_core16209_Delete
100
- id={row.original.id!}
101
- contextData={row.original.departmentName!}
102
- />
103
- </MyCenterFull>
104
- );
105
- }}
106
- />
107
- );
108
- }
@@ -1,112 +0,0 @@
1
- "use client";
2
- import baseAxios from "@/api/baseAxios";
3
- import { MyButtonCreate } from "@/components/Buttons/ButtonCRUD/MyButtonCreate";
4
- import { MyDateInput } from "@/components/Inputs/DateInput/MyDateInput";
5
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput";
6
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
7
- import { utils_file_fileToAQDocumentType } from "@/utils/utils_file";
8
- import { FileInput, Textarea } from "@mantine/core";
9
- import { useForm } from "@mantine/form";
10
-
11
- interface IDocument {
12
- path?: string;
13
- orderBy?: number;
14
- documentType?: number;
15
- promulgateDate?: Date;
16
- decisionCode?: string;
17
- departmentName?: string;
18
- description?: string;
19
- startDate?: Date;
20
- endDate?: Date;
21
- conclusion?: string;
22
- note?: string;
23
- documentAttributeId?: number;
24
- documentAttributeName?: string;
25
- isCycleCheck?: boolean;
26
- meetingDate?: Date;
27
- fileDetail?: {
28
- fileBase64String?: string;
29
- fileExtension?: string;
30
- fileName?: string;
31
- };
32
- id?: number;
33
- code?: string;
34
- name?: string;
35
- concurrencyStamp?: string;
36
- isEnabled?: boolean;
37
- ngayChinhSua?: Date;
38
- nguoiChinhSua?: string;
39
- }
40
- interface I extends IDocument {
41
- file?: File;
42
- }
43
-
44
- export function F_core16209_Create({
45
- RefinementTypeId,
46
- }: {
47
- RefinementTypeId: number;
48
- }) {
49
- const form = useForm<I>({
50
- mode: "uncontrolled",
51
- validate: {
52
- meetingDate: (value) => (value ? null : "Không được để trống"),
53
- departmentName: (value) => (value ? null : "Không được để trống"),
54
- description: (value) => (value ? null : "Không được để trống"),
55
- file: (value) => (value ? null : "Không được để trống"),
56
- startDate: (value) => (value ? null : "Không được để trống"),
57
- endDate: (value, values) =>
58
- value &&
59
- values.startDate &&
60
- new Date(value) > new Date(values.startDate)
61
- ? null
62
- : "Ngày kết thúc phải lớn hơn ngày bắt đầu",
63
- },
64
- });
65
- return (
66
- <MyButtonCreate
67
- objectName="văn bản"
68
- form={form}
69
- onSubmit={async (values) => {
70
- return await baseAxios.post("/Document/create", {
71
- ...values,
72
- DocumentType: RefinementTypeId, //1.4 Thông tin xây dựng, cải tiến, bảo trì hệ thống
73
- fileDetail: await utils_file_fileToAQDocumentType(values.file!),
74
- });
75
- }}
76
- >
77
- <MyDateInput
78
- withAsterisk
79
- label="Ngày họp"
80
- {...form.getInputProps("meetingDate")}
81
- />
82
- <MyTextInput
83
- withAsterisk
84
- label="Đơn vị yêu cầu"
85
- {...form.getInputProps("departmentName")}
86
- />
87
- <MyTextInput
88
- withAsterisk
89
- label="Nội dung cải tiến"
90
- {...form.getInputProps("description")}
91
- />
92
- <MyTextInput label="Kết luận" {...form.getInputProps("conclusion")} />
93
- <MyDateInput
94
- withAsterisk
95
- label="Ngày bắt đầu"
96
- {...form.getInputProps("startDate")}
97
- />
98
- <MyDateInput
99
- withAsterisk
100
- label="Ngày kết thúc"
101
- {...form.getInputProps("endDate")}
102
- />
103
- <FileInput
104
- placeholder="Tải lên tài liệu"
105
- withAsterisk
106
- label="Tài liệu"
107
- {...form.getInputProps("file")}
108
- />
109
- <Textarea label="Ghi chú" {...form.getInputProps("note")}></Textarea>
110
- </MyButtonCreate>
111
- );
112
- }
@@ -1,17 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { MyActionIconDelete } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconDelete";
3
-
4
- export function F_core16209_Delete({
5
- id,
6
- contextData,
7
- }: {
8
- id: number;
9
- contextData: string;
10
- }) {
11
- return (
12
- <MyActionIconDelete
13
- contextData={contextData}
14
- onSubmit={() => baseAxios.post("/Document/delete", { id: id })}
15
- />
16
- );
17
- }