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,114 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { MyTextInput } from "@/components";
3
- import { MyActionIconUpdate } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconUpdate";
4
- import { MyDateInput } from "@/components/Inputs/DateInput/MyDateInput";
5
- import { utils_file_fileToAQDocumentType } from "@/utils/utils_file";
6
- import { FileInput, Textarea, TextInput } from "@mantine/core";
7
- import { DateInput } from "@mantine/dates";
8
- import { useForm } from "@mantine/form";
9
- import { debug } from "console";
10
- interface IDocument {
11
- path?: string;
12
- orderBy?: number;
13
- documentType?: number;
14
- promulgateDate?: Date;
15
- decisionCode?: string;
16
- departmentName?: string;
17
- description?: string;
18
- startDate?: Date;
19
- endDate?: Date;
20
- conclusion?: string;
21
- note?: string;
22
- documentAttributeId?: number;
23
- documentAttributeName?: string;
24
- isCycleCheck?: boolean;
25
- meetingDate?: Date;
26
- fileDetail?: {
27
- fileBase64String?: string;
28
- fileExtension?: string;
29
- fileName?: string;
30
- };
31
- id?: number;
32
- code?: string;
33
- name?: string;
34
- concurrencyStamp?: string;
35
- isEnabled?: boolean;
36
- ngayChinhSua?: Date;
37
- nguoiChinhSua?: string;
38
- }
39
- interface I extends IDocument {
40
- file?: File;
41
- }
42
- export function F_core16209_Update({ values }: { values: I }) {
43
- const form = useForm<I>({
44
- mode: "uncontrolled",
45
- initialValues: {
46
- ...values,
47
- file: new File(
48
- [],
49
- values.path?.split("/")[values.path.split("/").length - 1]!
50
- ),
51
- startDate: new Date(values.startDate!),
52
- endDate: new Date(values.endDate!),
53
- meetingDate: new Date(values.meetingDate!),
54
- },
55
- validate: {
56
- meetingDate: (value) => (value ? null : "Không được để trống"),
57
- departmentName: (value) => (value ? null : "Không được để trống"),
58
- description: (value) => (value ? null : "Không được để trống"),
59
- file: (value) => (value ? null : "Không được để trống"),
60
- startDate: (value) => (value ? null : "Không được để trống"),
61
- endDate: (value, values) =>
62
- value &&
63
- values.startDate &&
64
- new Date(value) > new Date(values.startDate)
65
- ? null
66
- : "Ngày kết thúc phải lớn hơn ngày bắt đầu",
67
- },
68
- });
69
- return (
70
- <MyActionIconUpdate
71
- form={form}
72
- onSubmit={async (values) => {
73
- return await baseAxios.post("/Document/Update", {
74
- ...values,
75
- fileDetail: await utils_file_fileToAQDocumentType(values.file!),
76
- });
77
- }}
78
- >
79
- <MyDateInput
80
- withAsterisk
81
- label="Ngày họp"
82
- {...form.getInputProps("meetingDate")}
83
- />
84
- <MyTextInput
85
- withAsterisk
86
- label="Đơn vị yêu cầu"
87
- {...form.getInputProps("departmentName")}
88
- />
89
- <MyTextInput
90
- withAsterisk
91
- label="Nội dung cải tiến"
92
- {...form.getInputProps("description")}
93
- />
94
- <MyTextInput label="Kết luận" {...form.getInputProps("conclusion")} />
95
- <MyDateInput
96
- withAsterisk
97
- label="Ngày bắt đầu"
98
- {...form.getInputProps("startDate")}
99
- />
100
- <MyDateInput
101
- withAsterisk
102
- label="Ngày kết thúc"
103
- {...form.getInputProps("endDate")}
104
- />
105
- <FileInput
106
- placeholder="Tải lên tài liệu"
107
- withAsterisk
108
- label="Tài liệu"
109
- {...form.getInputProps("file")}
110
- />
111
- <Textarea label="Ghi chú" {...form.getInputProps("note")}></Textarea>
112
- </MyActionIconUpdate>
113
- );
114
- }
@@ -1,29 +0,0 @@
1
- "use client";
2
-
3
- import { MyTab } from "@/components";
4
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
5
- import { Tabs } from "@mantine/core";
6
- import { F_core18256_Read } from "./F_core18256_Read";
7
-
8
-
9
- const tabData = [
10
- { label: "1. Văn bản quy định" },
11
- { label: "2. Quy trình xử lý công việc" },
12
- { label: "3. Danh mục biểu mẫu" },
13
- ];
14
-
15
- export function F_core18256() {
16
- return (
17
- <MyTab tabList={tabData}>
18
- <Tabs.Panel value="1. Văn bản quy định">
19
- <F_core18256_Read documentType={OBJECT_DOCUMENT_TYPES.Regulations} />
20
- </Tabs.Panel>
21
- <Tabs.Panel value="2. Quy trình xử lý công việc">
22
- <F_core18256_Read documentType={OBJECT_DOCUMENT_TYPES.Workflow} />
23
- </Tabs.Panel>
24
- <Tabs.Panel value="3. Danh mục biểu mẫu">
25
- <F_core18256_Read documentType={OBJECT_DOCUMENT_TYPES.Form} />
26
- </Tabs.Panel>
27
- </MyTab>
28
- );
29
- }
@@ -1,34 +0,0 @@
1
- 'use client'
2
- import baseAxios from "@/api/baseAxios"
3
- import { MyButtonCreate } from "@/components"
4
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput"
5
- import { useForm } from "@mantine/form"
6
- interface I {
7
- name?: string,
8
- code?: string,
9
- documentType?: number
10
- }
11
-
12
- export function F_core18256_Create(
13
- { documentType }: { documentType: number }
14
- ) {
15
- const form = useForm<I>({
16
- mode: "uncontrolled",
17
- initialValues: {
18
- name: "",
19
- code: "",
20
- documentType: documentType
21
- },
22
- validate: {
23
- name: (value) => value ? null : 'Không được để trống'
24
- }
25
- })
26
- return (
27
- <MyButtonCreate objectName="Loại văn bản" form={form} onSubmit={(values) => baseAxios.post("/DocumentAttribute/Create", values)}>
28
- <MyTextInput label="Mã loại văn bản" {...form.getInputProps("code")} />
29
- <MyTextInput label="Tên loại văn bản" {...form.getInputProps("name")} />
30
- </MyButtonCreate>
31
- )
32
- }
33
-
34
-
@@ -1,14 +0,0 @@
1
- 'use client'
2
-
3
- import baseAxios from "@/api/baseAxios"
4
- import { MyActionIconDelete } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconDelete"
5
-
6
- export function F_core18256_Delete({ id }: { id: number }) {
7
- return (
8
- <MyActionIconDelete
9
- onSubmit={
10
- async () => await baseAxios.post("/DocumentAttribute/Delete", { id: id })
11
- }
12
- />
13
- )
14
- }
@@ -1,59 +0,0 @@
1
- 'use client'
2
-
3
- import baseAxios from "@/api/baseAxios";
4
- import { MyCenterFull } from "@/components/CenterFull/MyCenterFull";
5
- import { MyDataTable } from "@/components/DataDisplay/DataTable/MyDataTable";
6
- import { useQuery } from "@tanstack/react-query";
7
- import { MRT_ColumnDef } from "mantine-react-table";
8
- import { useMemo } from "react";
9
- import { F_core18256_Create } from "./F_core18256_Create";
10
- import { F_core18256_Delete } from "./F_core18256_Delete";
11
- import { F_core18256_Update } from "./F_core18256_Update";
12
-
13
- interface I {
14
- id?: number, name?: string, code?: string
15
- }
16
- export function F_core18256_Read({ documentType }: { documentType: number }
17
- ) {
18
- const documentAttributeQuery = useQuery<I[]>({
19
- queryKey: ['F_core18256_Read', documentType],
20
- queryFn: async () => {
21
- const result = await baseAxios.get("/DocumentAttribute/GetByType?", { params: { documentType } })
22
- return result.data?.data || []
23
- },
24
- })
25
-
26
- const columns = useMemo<MRT_ColumnDef<I>[]>(
27
- () => [
28
- {
29
- header: "Mã loại văn bản",
30
- accessorKey: "code"
31
- },
32
- {
33
- header: "Tên Loại Văn Bản",
34
- accessorKey: "name"
35
- }
36
- ],
37
- []
38
- );
39
-
40
- if (documentAttributeQuery.isLoading) return "Đang tải dữ liệu..."
41
- if (documentAttributeQuery.isError) return "Có lỗi xảy ra!"
42
- return (
43
- <MyDataTable
44
- columns={columns}
45
- enableRowNumbers={true}
46
- data={documentAttributeQuery.data!}
47
- renderTopToolbarCustomActions={() => <F_core18256_Create documentType={documentType} />}
48
- renderRowActions={({ row }) => {
49
- return (
50
- <MyCenterFull>
51
- <F_core18256_Update values={row.original} />
52
- <F_core18256_Delete id={row.original.id!} />
53
- </MyCenterFull>
54
- )
55
- }}
56
- />
57
- )
58
- }
59
-
@@ -1,40 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { Select, SelectProps } from "@mantine/core";
3
- import { useQuery } from "@tanstack/react-query";
4
-
5
- interface ISelect extends SelectProps {
6
- documentTypeId?: number
7
- label?: string;
8
- dataMapper?: (item: any) => { value: string; label: string }; // Hàm tùy chỉnh cách map dữ liệu
9
- }
10
-
11
- export function F_core18256_Select({ documentTypeId, label = "", dataMapper, ...rest }: ISelect) {
12
-
13
- const query = useQuery({
14
- queryKey: [`/DocumentAttribute/GetByType?documentType=${documentTypeId}`],
15
- queryFn: async () => {
16
- const result = (await baseAxios.get(`/DocumentAttribute/GetByType?documentType=${documentTypeId}`)).data.data;
17
- return result
18
- },
19
- });
20
-
21
- if (query.isLoading) return "Loading...";
22
-
23
- const data = query.data?.map((item: any) => {
24
- if (dataMapper) return dataMapper(item)
25
- return {
26
- value: item.id?.toString()!,
27
- label: `${item.code}-${item.name}`,
28
- }
29
- });
30
-
31
- return (
32
- <Select
33
- label={label}
34
- placeholder={`Chọn ${label?.toLowerCase()}`}
35
- data={data}
36
- {...rest}
37
- value={rest.value?.toString()}
38
- />
39
- );
40
- }
@@ -1,22 +0,0 @@
1
- 'use client'
2
- import baseAxios from "@/api/baseAxios"
3
- import { MyActionIconUpdate } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconUpdate"
4
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput"
5
- import { useForm } from "@mantine/form"
6
- interface I {
7
- id?: number, name?: string, code?: string
8
- }
9
- export function F_core18256_Update(
10
- { values }: { values: I }
11
- ) {
12
- const form = useForm({
13
- initialValues: values
14
- })
15
-
16
- return (
17
- <MyActionIconUpdate form={form} onSubmit={async (values) => await baseAxios.post("/DocumentAttribute/Update", values)}>
18
- <MyTextInput label="Mã loại văn bản" {...form.getInputProps("code")} />
19
- <MyTextInput label="Tên loại văn bản" {...form.getInputProps("name")} />
20
- </MyActionIconUpdate>
21
- )
22
- }
@@ -1,17 +0,0 @@
1
- import { MyFlexColumn, MyFlexEnd, MyPageContent } from "@/components";
2
- import { F_core26965_Create } from "./F_core26965_Create";
3
- import F_core26965_Read from "./F_core26965_Read";
4
- import { Paper, Space } from "@mantine/core";
5
- import { OBJECT_COlORS } from "@/constants/object/color";
6
-
7
- export function F_core26965({ RegulationsTypeId }: { RegulationsTypeId: number }) {
8
- return (
9
- <Paper p={'md'}>
10
- <MyFlexEnd>
11
- <F_core26965_Create RegulationsTypeId={RegulationsTypeId} />
12
- </MyFlexEnd>
13
- <Space />
14
- <F_core26965_Read RegulationsTypeId={RegulationsTypeId} />
15
- </Paper>
16
- )
17
- }
@@ -1,106 +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 { MyFileInput } from "@/components/Inputs/FileInput/MyFileInput";
6
- import { MyNumberInput } from "@/components/Inputs/NumberInput/MyNumberInput";
7
- import { MyTextInput } from "@/components/Inputs/TextInput/MyTextInput";
8
- import { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
9
- import { utils_file_fileToAQDocumentType } from "@/utils/utils_file";
10
- import { useForm } from "@mantine/form";
11
- import { F_core18256_Select } from "../core18256/F_core18256_Select";
12
- interface IDocument {
13
- path?: string;
14
- orderBy?: number;
15
- documentType?: number;
16
- promulgateDate?: Date;
17
- decisionCode?: string;
18
- departmentName?: string;
19
- description?: string;
20
- startDate?: Date;
21
- endDate?: Date;
22
- conclusion?: string;
23
- note?: string;
24
- documentAttributeId?: number;
25
- documentAttributeName?: string;
26
- isCycleCheck?: boolean;
27
- meetingDate?: Date;
28
- fileDetail?: {
29
- fileBase64String?: string;
30
- fileExtension?: string;
31
- fileName?: string;
32
- };
33
- id?: number;
34
- code?: string;
35
- name?: string;
36
- concurrencyStamp?: string;
37
- isEnabled?: boolean;
38
- ngayChinhSua?: Date;
39
- nguoiChinhSua?: string;
40
- }
41
- interface I extends IDocument {
42
- file?: File;
43
- }
44
- export function F_core26965_Create({
45
- RegulationsTypeId,
46
- }: {
47
- RegulationsTypeId: number;
48
- }) {
49
- const form = useForm<I>({
50
- mode: "uncontrolled",
51
- validate: {
52
- decisionCode: (value) =>
53
- value ? null : "Số quy định không được để trống",
54
- promulgateDate: (value) =>
55
- value ? null : "Ngày ban hành không được để trống",
56
- name: (value) => (value ? null : "Tên tài liệu không được để trống"),
57
- documentAttributeId: (value) =>
58
- value ? null : "Loại văn bản không được để trống",
59
- file: (value) => (value ? null : "Tệp đính kèm không được để trống"),
60
- },
61
- });
62
- return (
63
- <MyButtonCreate
64
- objectName="Văn bản quy định tổ chức"
65
- form={form}
66
- onSubmit={async (values) => {
67
- return await baseAxios.post("/Document/create", {
68
- ...values,
69
- DocumentType: RegulationsTypeId,
70
- fileDetail: await utils_file_fileToAQDocumentType(values.file!),
71
- });
72
- }}
73
- >
74
- <MyTextInput
75
- withAsterisk
76
- label="Số quy định"
77
- {...form.getInputProps("decisionCode")}
78
- />
79
- <MyDateInput
80
- withAsterisk
81
- label="Ngày ban hành"
82
- {...form.getInputProps("promulgateDate")}
83
- />
84
- <MyTextInput
85
- withAsterisk
86
- label="Tên tài liệu"
87
- {...form.getInputProps("name")}
88
- />
89
- <F_core18256_Select
90
- withAsterisk
91
- label="Loại văn bản"
92
- documentTypeId={RegulationsTypeId}
93
- {...form.getInputProps("documentAttributeId")}
94
- />
95
- <MyFileInput
96
- withAsterisk
97
- label="Văn bản"
98
- {...form.getInputProps("file")}
99
- />
100
- <MyNumberInput
101
- label="Thứ tự hiển thị trên danh sách"
102
- {...form.getInputProps("orderBy")}
103
- />
104
- </MyButtonCreate>
105
- );
106
- }
@@ -1,19 +0,0 @@
1
- import baseAxios from "@/api/baseAxios";
2
- import { MyActionIconDelete } from "@/components/ActionIcons/ActionIconCRUD/MyActionIconDelete";
3
-
4
- export function F_core26965_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 } 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 { OBJECT_DOCUMENT_TYPES } from "@/constants/object/documentTypes";
11
- import { U0DateToDDMMYYYString } from "@/utils/utils_date";
12
- import { MRT_ColumnDef } from "mantine-react-table";
13
- import { useMemo } from "react";
14
- import { F_core26965_Delete } from "./F_core26965_Delete";
15
- import { F_core26965_Update } from "./F_core26965_Update";
16
- interface I {
17
- documentType?: number;
18
- id?: number;
19
- code?: string;
20
- name?: string;
21
- concurrencyStamp?: string;
22
- isEnabled?: boolean;
23
- }
24
-
25
- export default function F_core26965_Read({
26
- RegulationsTypeId,
27
- }: {
28
- RegulationsTypeId: number;
29
- }) {
30
- const documentAttributeQuery = useQuery<I[]>({
31
- queryKey: ["F_core26965_Read", RegulationsTypeId],
32
- queryFn: async () => {
33
- const result = await baseAxios.get("/DocumentAttribute/GetByType?", {
34
- params: { documentType: RegulationsTypeId },
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
- RegulationsTypeId={RegulationsTypeId}
58
- />
59
- ))}
60
- </Accordion>
61
- </MyFlexColumn>
62
- );
63
- }
64
-
65
- function SubRead({
66
- name,
67
- documentType,
68
- RegulationsTypeId,
69
- }: {
70
- name: string;
71
- documentType: number;
72
- RegulationsTypeId: 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: ["SubRead" + 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_core26965_Update
152
- RegulationsTypeId={RegulationsTypeId}
153
- values={row.original!}
154
- />
155
- <F_core26965_Delete
156
- id={row.original.id!}
157
- contextData={row.original.decisionCode!}
158
- />
159
- </MyCenterFull>
160
- )}
161
- />
162
- </Accordion.Panel>
163
- </Accordion.Item>
164
- );
165
- }