phx-react 1.3.1533 → 1.3.1535
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.
- package/dist/cjs/components/FormTarget/PHXFormTarget.d.ts +3 -0
- package/dist/cjs/components/FormTarget/PHXFormTarget.js +237 -0
- package/dist/cjs/components/FormTarget/PHXFormTarget.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.d.ts +6 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.js +11 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/index.d.ts +1 -0
- package/dist/cjs/components/FormTarget/components/index.js +5 -0
- package/dist/cjs/components/FormTarget/components/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.d.ts +13 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.js +166 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.d.ts +17 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.js +46 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.d.ts +11 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.js +175 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.js.map +1 -0
- package/dist/cjs/components/FormTarget/config.d.ts +70 -0
- package/dist/cjs/components/FormTarget/config.js +90 -0
- package/dist/cjs/components/FormTarget/config.js.map +1 -0
- package/dist/cjs/components/FormTarget/constant.d.ts +37 -0
- package/dist/cjs/components/FormTarget/constant.js +45 -0
- package/dist/cjs/components/FormTarget/constant.js.map +1 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.d.ts +3 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.js +7 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.js.map +1 -0
- package/dist/cjs/components/FormTarget/graphql/query.d.ts +7 -0
- package/dist/cjs/components/FormTarget/graphql/query.js +51 -0
- package/dist/cjs/components/FormTarget/graphql/query.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/index.d.ts +2 -0
- package/dist/cjs/components/FormTarget/hooks/index.js +6 -0
- package/dist/cjs/components/FormTarget/hooks/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.d.ts +7 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.js +65 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.d.ts +19 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.js +191 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/index.d.ts +6 -0
- package/dist/cjs/components/FormTarget/index.js +10 -0
- package/dist/cjs/components/FormTarget/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/type/target.d.ts +161 -0
- package/dist/cjs/components/FormTarget/type/target.js +3 -0
- package/dist/cjs/components/FormTarget/type/target.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.js +22 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.js +15 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.js +23 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.d.ts +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.js +16 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.d.ts +8 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.js +60 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.d.ts +9 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.js +91 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/components/FormTarget/PHXFormTarget.d.ts +3 -0
- package/dist/esm/components/FormTarget/PHXFormTarget.js +233 -0
- package/dist/esm/components/FormTarget/PHXFormTarget.js.map +1 -0
- package/dist/esm/components/FormTarget/components/divider/divider.d.ts +6 -0
- package/dist/esm/components/FormTarget/components/divider/divider.js +6 -0
- package/dist/esm/components/FormTarget/components/divider/divider.js.map +1 -0
- package/dist/esm/components/FormTarget/components/index.d.ts +1 -0
- package/dist/esm/components/FormTarget/components/index.js +2 -0
- package/dist/esm/components/FormTarget/components/index.js.map +1 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.d.ts +13 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.js +163 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.js.map +1 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.d.ts +17 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.js +42 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.js.map +1 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.d.ts +11 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.js +172 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.js.map +1 -0
- package/dist/esm/components/FormTarget/config.d.ts +70 -0
- package/dist/esm/components/FormTarget/config.js +87 -0
- package/dist/esm/components/FormTarget/config.js.map +1 -0
- package/dist/esm/components/FormTarget/constant.d.ts +37 -0
- package/dist/esm/components/FormTarget/constant.js +42 -0
- package/dist/esm/components/FormTarget/constant.js.map +1 -0
- package/dist/esm/components/FormTarget/graphql/mutation.d.ts +3 -0
- package/dist/esm/components/FormTarget/graphql/mutation.js +4 -0
- package/dist/esm/components/FormTarget/graphql/mutation.js.map +1 -0
- package/dist/esm/components/FormTarget/graphql/query.d.ts +7 -0
- package/dist/esm/components/FormTarget/graphql/query.js +47 -0
- package/dist/esm/components/FormTarget/graphql/query.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/index.d.ts +2 -0
- package/dist/esm/components/FormTarget/hooks/index.js +3 -0
- package/dist/esm/components/FormTarget/hooks/index.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.d.ts +7 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.js +61 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.d.ts +19 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.js +187 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.js.map +1 -0
- package/dist/esm/components/FormTarget/index.d.ts +6 -0
- package/dist/esm/components/FormTarget/index.js +7 -0
- package/dist/esm/components/FormTarget/index.js.map +1 -0
- package/dist/esm/components/FormTarget/type/target.d.ts +161 -0
- package/dist/esm/components/FormTarget/type/target.js +2 -0
- package/dist/esm/components/FormTarget/type/target.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.js +18 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.js +11 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.js +19 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.d.ts +1 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.js +12 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.d.ts +8 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.js +57 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.d.ts +9 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.js +86 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var _a;
|
|
2
|
+
export var ENotifyWith;
|
|
3
|
+
(function (ENotifyWith) {
|
|
4
|
+
ENotifyWith["GVCN"] = "GVCN";
|
|
5
|
+
ENotifyWith["GVBM"] = "GVBM";
|
|
6
|
+
})(ENotifyWith || (ENotifyWith = {}));
|
|
7
|
+
export var OPTION_FILTER_ALL = {
|
|
8
|
+
id: 0,
|
|
9
|
+
name: 'Tất cả',
|
|
10
|
+
code: 'ALL',
|
|
11
|
+
};
|
|
12
|
+
export var ERoleCode;
|
|
13
|
+
(function (ERoleCode) {
|
|
14
|
+
ERoleCode["TEACHER"] = "GV";
|
|
15
|
+
ERoleCode["STUDENT"] = "SV";
|
|
16
|
+
ERoleCode["STAFF"] = "NV";
|
|
17
|
+
ERoleCode["DEPARTMENT"] = "DEPARTMENT";
|
|
18
|
+
})(ERoleCode || (ERoleCode = {}));
|
|
19
|
+
export var EObjectType;
|
|
20
|
+
(function (EObjectType) {
|
|
21
|
+
EObjectType["TEACHER"] = "TEACHER";
|
|
22
|
+
EObjectType["STUDENT"] = "STUDENT";
|
|
23
|
+
EObjectType["STAFF"] = "STAFF";
|
|
24
|
+
EObjectType["DEPARTMENT"] = "DEPARTMENT";
|
|
25
|
+
})(EObjectType || (EObjectType = {}));
|
|
26
|
+
export var FILTER_BY = {
|
|
27
|
+
ALL: 'ALL',
|
|
28
|
+
EDUCATIONAL_LEVEL: 'EDUCATIONAL_LEVEL',
|
|
29
|
+
GRADE: 'GRADE',
|
|
30
|
+
CLASSROOM: 'CLASSROOM',
|
|
31
|
+
DEPARTMENT: 'DEPARTMENT',
|
|
32
|
+
CUSTOM_LIST: 'CUSTOM_LIST',
|
|
33
|
+
};
|
|
34
|
+
export var VALIDATE_REQUIRED_INPUT = 'Trường này không được để trống';
|
|
35
|
+
export var DEFAULT_NOTIFY_WITH_BY_TARGET = (_a = {},
|
|
36
|
+
_a[ERoleCode.STUDENT] = ENotifyWith.GVCN,
|
|
37
|
+
_a[ERoleCode.TEACHER] = undefined,
|
|
38
|
+
_a[ERoleCode.STAFF] = undefined,
|
|
39
|
+
_a[ERoleCode.DEPARTMENT] = undefined,
|
|
40
|
+
_a);
|
|
41
|
+
export var TEXT_UNDEFINED = '--';
|
|
42
|
+
//# sourceMappingURL=constant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../../../src/components/FormTarget/constant.ts"],"names":[],"mappings":";AAAA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;AACf,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,KAAK;CACZ,CAAA;AAED,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,2BAAc,CAAA;IACd,2BAAc,CAAA;IACd,yBAAY,CAAA;IACZ,sCAAyB,CAAA;AAC3B,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB;AACD,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,wCAAyB,CAAA;AAC3B,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,MAAM,CAAC,IAAM,SAAS,GAAG;IACvB,GAAG,EAAE,KAAK;IACV,iBAAiB,EAAE,mBAAmB;IACtC,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;CAClB,CAAA;AAEV,MAAM,CAAC,IAAM,uBAAuB,GAAG,gCAAgC,CAAA;AACvE,MAAM,CAAC,IAAM,6BAA6B;IACxC,GAAC,SAAS,CAAC,OAAO,IAAG,WAAW,CAAC,IAAI;IACrC,GAAC,SAAS,CAAC,OAAO,IAAG,SAAS;IAC9B,GAAC,SAAS,CAAC,KAAK,IAAG,SAAS;IAC5B,GAAC,SAAS,CAAC,UAAU,IAAG,SAAS;OAClC,CAAA;AACD,MAAM,CAAC,IAAM,cAAc,GAAG,IAAI,CAAA"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const INSERT_TARGET_MUTATION = "\n mutation insertTargetMutation($data: [user_segment_target_insert_input!]!) {\n insert_user_segment_target(objects: $data) {\n affected_rows\n returning {\n id\n }\n }\n }\n";
|
|
2
|
+
export declare const UPDATE_TARGET_BY_ROLE_MUTATION = "\n mutation updateTargetByRoleMutation(\n $targetId: uuid!\n $targetByRoles: [user_segment_target_by_role_insert_input!]!\n ) {\n update_user_segment_target_by_role(\n where: {target_id: {_eq: $targetId}}\n _set: {deleted_at: now}\n ) {\n affected_rows\n }\n\n insert_user_segment_target_by_role(objects: $targetByRoles) {\n affected_rows\n }\n }\n";
|
|
3
|
+
export declare const UPDATE_TARGET_BY_PK_MUTATION = "\n mutation updateTargetByPkMutation(\n $data: user_segment_target_set_input!\n $id: uuid!\n ) {\n update_user_segment_target_by_pk(pk_columns: {id: $id}, _set: $data) {\n id\n }\n }\n";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export var INSERT_TARGET_MUTATION = "\n mutation insertTargetMutation($data: [user_segment_target_insert_input!]!) {\n insert_user_segment_target(objects: $data) {\n affected_rows\n returning {\n id\n }\n }\n }\n";
|
|
2
|
+
export var UPDATE_TARGET_BY_ROLE_MUTATION = "\n mutation updateTargetByRoleMutation(\n $targetId: uuid!\n $targetByRoles: [user_segment_target_by_role_insert_input!]!\n ) {\n update_user_segment_target_by_role(\n where: {target_id: {_eq: $targetId}}\n _set: {deleted_at: now}\n ) {\n affected_rows\n }\n\n insert_user_segment_target_by_role(objects: $targetByRoles) {\n affected_rows\n }\n }\n";
|
|
3
|
+
export var UPDATE_TARGET_BY_PK_MUTATION = "\n mutation updateTargetByPkMutation(\n $data: user_segment_target_set_input!\n $id: uuid!\n ) {\n update_user_segment_target_by_pk(pk_columns: {id: $id}, _set: $data) {\n id\n }\n }\n";
|
|
4
|
+
//# sourceMappingURL=mutation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutation.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/graphql/mutation.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,sBAAsB,GAAG,+MASrC,CAAA;AAED,MAAM,CAAC,IAAM,8BAA8B,GAAG,0YAgB7C,CAAA;AAED,MAAM,CAAC,IAAM,4BAA4B,GAAG,8MAS3C,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IQueryBuilderProps } from '../type/target';
|
|
2
|
+
export declare const GET_SELECT_QUERY = "\n query getSelectQuery($schoolId: Int!, $schoolYearId: Int!) {\n educational_level(\n order_by: {id: asc}\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n code\n }\n grade(\n order_by: {id: asc}\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n code\n educational_level_id\n }\n classroom(\n order_by: {id: asc}\n where: {\n deleted_at: {_is_null: true}\n school_id: {_eq: $schoolId}\n school_year_id: {_eq: $schoolYearId}\n }\n ) {\n id\n name\n code\n grade {\n id\n educational_level_id\n }\n }\n\n department(\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n }\n }\n";
|
|
3
|
+
export declare const queryListUserBuilder: ({ condition, schoolId, schoolYearId, target }: IQueryBuilderProps) => string;
|
|
4
|
+
export declare const getTargetByIdQuery = "\n query getTargetByIdQuery($id: uuid!) {\n target_inform_target_by_pk(id: $id) {\n target_by_roles(where: {deleted_at: {_is_null: true}}) {\n role_code\n target_educational_levels {\n educational_level {\n id\n name\n code\n }\n }\n target_grades {\n grade {\n id\n name\n code\n }\n }\n target_classrooms {\n classroom {\n id\n name\n code\n }\n }\n target_users {\n user {\n id\n name: full_name\n phone: phone_number\n email\n profile_teacher {\n user_code\n } \n profile_staff {\n user_code\n }\n }\n }\n }\n }\n }\n";
|
|
5
|
+
export declare const GET_TARGET_BY_ROLE_QUERY = "\n query getTargetByRoleQuery($id: uuid!) {\n user_segment_target_by_pk(id: $id) {\n school_year_id\n target_by_roles(where: {deleted_at: {_is_null: true}}) {\n role {\n role_code\n }\n is_all\n notify_with\n target_educational_levels {\n educational_level {\n id\n name\n code\n }\n }\n target_grades {\n grade {\n id\n name\n code\n }\n }\n target_classrooms {\n classroom {\n id\n name\n code\n }\n }\n target_departments {\n department {\n id\n name\n }\n }\n target_users {\n user {\n id\n name: full_name\n phone: phone_number\n email\n profile_student {\n user_code\n grade {\n id\n name\n }\n program_map_educational_level {\n educational_level {\n code\n name\n id\n }\n }\n }\n\n profile_teacher {\n user_code\n }\n profile_staff {\n user_code\n }\n relationshipUsersByStudentId(\n order_by: {created_at: desc}\n where: {\n deleted_at: {_is_null: true}\n user: {deleted_at: {_is_null: true}}\n userByStudentId: {deleted_at: {_is_null: true}}\n }\n ) {\n parent_id\n relationship_code\n user {\n gender\n full_name\n phone_number\n }\n }\n }\n }\n }\n }\n }\n";
|
|
6
|
+
export declare const GET_LIST_ROLE_QUERY = "\n query getListRoleQuery($schoolId: Int!) {\n role(where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}) {\n id\n role_code\n }\n }\n";
|
|
7
|
+
export declare const GET_CLASSROOM_BY_USER_IDS = "\n query getClassroomByUserIds($schoolYearId: Int!, $userIds: [Int!]!) {\n classroom_student(\n where: {\n deleted_at: { _is_null: true }\n user:{id:{_in:$userIds}}\n classroom: {\n deleted_at: { _is_null: true }\n school_year_id: { _eq: $schoolYearId }\n }\n }\n ) {\n user{\n id\n }\n classroom {\n id\n name\n grade_id\n grade {\n id\n educational_level_id\n }\n program_id\n school_year_id\n program {\n name\n }\n }\n }\n}\n";
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ERoleCode, OPTION_FILTER_ALL } from '../constant';
|
|
2
|
+
export var GET_SELECT_QUERY = "\n query getSelectQuery($schoolId: Int!, $schoolYearId: Int!) {\n educational_level(\n order_by: {id: asc}\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n code\n }\n grade(\n order_by: {id: asc}\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n code\n educational_level_id\n }\n classroom(\n order_by: {id: asc}\n where: {\n deleted_at: {_is_null: true}\n school_id: {_eq: $schoolId}\n school_year_id: {_eq: $schoolYearId}\n }\n ) {\n id\n name\n code\n grade {\n id\n educational_level_id\n }\n }\n\n department(\n where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}\n ) {\n id\n name\n }\n }\n";
|
|
3
|
+
var getFieldByTarget = function (target, schoolYearId, schoolId) {
|
|
4
|
+
var _a;
|
|
5
|
+
var fieldByTarget = (_a = {},
|
|
6
|
+
_a[ERoleCode.TEACHER] = "\n profile_teacher {\n user_code\n educational_level_group {\n educational_level_map_groups(where:{deleted_at:{_is_null:true}}) {\n educational_level_id\n }\n }\n teacher_subject_assignments(where: {deleted_at:{_is_null:true}}) {\n classroom_teachers(where: {deleted_at:{_is_null:true} classroom:{school_year_id:{_eq: ".concat(schoolYearId, "}}}) {\n teacher_type\n classroom {\n id\n grade_id\n }\n }\n }\n } \n "),
|
|
7
|
+
_a[ERoleCode.STAFF] = "\n profile_staff {\n user_code\n educational_level_group {\n educational_level_map_groups(where:{deleted_at:{_is_null:true}}) {\n educational_level_id\n }\n }\n }\n ",
|
|
8
|
+
_a[ERoleCode.STUDENT] = "\n profile_student {\n user_code\n grade {\n id\n name\n }\n program_map_educational_level {\n educational_level {\n code\n name\n id\n }\n }\n }\n classroom_students(\n where: {\n deleted_at: { _is_null: true }\n classroom: {\n deleted_at: { _is_null: true }\n school_year_id: { _eq: ".concat(schoolYearId, " }\n school_id: { _eq: ").concat(schoolId, " }\n }\n }\n ) {\n id\n classroom {\n id\n name\n grade_id\n grade {\n id\n educational_level_id\n }\n program_id\n school_year_id\n program {\n name\n }\n }\n }\n relationshipUsersByStudentId(order_by: {created_at: desc}, where: {deleted_at: {_is_null: true}, user: {deleted_at: {_is_null: true}}, userByStudentId: {deleted_at: {_is_null: true}}}) {\n parent_id\n relationship_code\n user {\n gender\n full_name\n phone_number\n }\n }\n "),
|
|
9
|
+
_a[ERoleCode.DEPARTMENT] = '',
|
|
10
|
+
_a);
|
|
11
|
+
return fieldByTarget[target];
|
|
12
|
+
};
|
|
13
|
+
var isFilterAll = function (value) { return OPTION_FILTER_ALL.id === value; };
|
|
14
|
+
var getConditionsByTarget = function (_a) {
|
|
15
|
+
var condition = _a.condition, schoolYearId = _a.schoolYearId, target = _a.target;
|
|
16
|
+
var classroomId = condition.classroomId, educationalLevelId = condition.educationalLevelId, gradeId = condition.gradeId;
|
|
17
|
+
if (target === ERoleCode.STAFF) {
|
|
18
|
+
return "\n ".concat("profile_staff:{\n deleted_at:{_is_null:true}\n is_quit_job:{_eq:false}\n }", "\n ");
|
|
19
|
+
}
|
|
20
|
+
if ([classroomId, educationalLevelId, gradeId].every(function (item) { return item === OPTION_FILTER_ALL.id; })) {
|
|
21
|
+
// nếu bộ lọc đều chọn tất cả thì ko cần filter theo gì cả
|
|
22
|
+
return '';
|
|
23
|
+
}
|
|
24
|
+
var isNotAllEducationalLevel = !isFilterAll(educationalLevelId);
|
|
25
|
+
var isNotAllGrade = !isFilterAll(gradeId);
|
|
26
|
+
var isNotAllClassroom = !isFilterAll(classroomId);
|
|
27
|
+
if (target === ERoleCode.STUDENT) {
|
|
28
|
+
return " \n relationship_users:{\n deleted_at:{_is_null:true}\n userByStudentId:{\n classroom_students:{\n deleted_at: {_is_null: true}\n classroom:{\n ".concat(isNotAllClassroom ? "id:{_eq: ".concat(classroomId, "}") : '', "\n school_year_id:{_eq: ").concat(schoolYearId, "}\n grade:{\n ").concat(isNotAllGrade ? "id:{_eq: ".concat(gradeId, "}") : '', "\n ").concat(isNotAllEducationalLevel ? "educational_level_id:{_eq: ".concat(educationalLevelId, "}") : '', "\n \n }\n }\n }\n }\n }\n ");
|
|
29
|
+
}
|
|
30
|
+
if (target === ERoleCode.TEACHER) {
|
|
31
|
+
return "\n profile_teacher:{\n ".concat(isNotAllEducationalLevel
|
|
32
|
+
? " educational_level_group:{\n educational_level_map_groups:{\n deleted_at:{_is_null:true}\n educational_level_id:{_eq: ".concat(educationalLevelId, "}\n }\n }")
|
|
33
|
+
: '', "\n ").concat(isNotAllGrade || isNotAllClassroom
|
|
34
|
+
? " teacher_subject_assignments: {\n deleted_at:{_is_null:true}\n classroom_teachers:{\n deleted_at:{_is_null:true}\n classroom:{\n school_year_id:{_eq: ".concat(schoolYearId, "}\n ").concat(isNotAllClassroom ? "id:{_eq: ".concat(classroomId, "}") : '', "\n ").concat(isNotAllGrade ? "grade_id:{_eq: ".concat(gradeId, "}") : '', "\n \n }\n }\n }")
|
|
35
|
+
: '', "\n \n\n }\n ");
|
|
36
|
+
}
|
|
37
|
+
return '';
|
|
38
|
+
};
|
|
39
|
+
export var queryListUserBuilder = function (_a) {
|
|
40
|
+
var condition = _a.condition, schoolId = _a.schoolId, schoolYearId = _a.schoolYearId, target = _a.target;
|
|
41
|
+
return " \nquery getListUserQuery(\n $roleCode: String!\n $limit: Int!\n $offset: Int!\n $searchKeyword: String!\n $schoolId: Int!\n ) {\n users(\n limit: $limit\n offset: $offset\n order_by: {created_at: desc}\n where: {\n ".concat(getConditionsByTarget({ target: target, schoolYearId: schoolYearId, condition: condition }), "\n deleted_at: {_is_null: true}\n school_id:{_eq: $schoolId}\n user_roles: {\n deleted_at: {_is_null: true}\n role: {role_code: {_eq: $roleCode}}\n }\n _or: [\n {full_name: {_ilike: $searchKeyword}}\n {full_name_unaccent: {_ilike: $searchKeyword}}\n ]\n }\n ) {\n id\n full_name\n email\n phone_number\n ").concat(getFieldByTarget(target, schoolYearId, schoolId), "\n user_roles(where: {deleted_at: {_is_null: true}, is_active: {_eq: true}, role: {school_id: {_eq: $schoolId}}}) {\n role {\n name\n }\n }\n }\n }");
|
|
42
|
+
};
|
|
43
|
+
export var getTargetByIdQuery = "\n query getTargetByIdQuery($id: uuid!) {\n target_inform_target_by_pk(id: $id) {\n target_by_roles(where: {deleted_at: {_is_null: true}}) {\n role_code\n target_educational_levels {\n educational_level {\n id\n name\n code\n }\n }\n target_grades {\n grade {\n id\n name\n code\n }\n }\n target_classrooms {\n classroom {\n id\n name\n code\n }\n }\n target_users {\n user {\n id\n name: full_name\n phone: phone_number\n email\n profile_teacher {\n user_code\n } \n profile_staff {\n user_code\n }\n }\n }\n }\n }\n }\n";
|
|
44
|
+
export var GET_TARGET_BY_ROLE_QUERY = "\n query getTargetByRoleQuery($id: uuid!) {\n user_segment_target_by_pk(id: $id) {\n school_year_id\n target_by_roles(where: {deleted_at: {_is_null: true}}) {\n role {\n role_code\n }\n is_all\n notify_with\n target_educational_levels {\n educational_level {\n id\n name\n code\n }\n }\n target_grades {\n grade {\n id\n name\n code\n }\n }\n target_classrooms {\n classroom {\n id\n name\n code\n }\n }\n target_departments {\n department {\n id\n name\n }\n }\n target_users {\n user {\n id\n name: full_name\n phone: phone_number\n email\n profile_student {\n user_code\n grade {\n id\n name\n }\n program_map_educational_level {\n educational_level {\n code\n name\n id\n }\n }\n }\n\n profile_teacher {\n user_code\n }\n profile_staff {\n user_code\n }\n relationshipUsersByStudentId(\n order_by: {created_at: desc}\n where: {\n deleted_at: {_is_null: true}\n user: {deleted_at: {_is_null: true}}\n userByStudentId: {deleted_at: {_is_null: true}}\n }\n ) {\n parent_id\n relationship_code\n user {\n gender\n full_name\n phone_number\n }\n }\n }\n }\n }\n }\n }\n";
|
|
45
|
+
export var GET_LIST_ROLE_QUERY = "\n query getListRoleQuery($schoolId: Int!) {\n role(where: {deleted_at: {_is_null: true}, school_id: {_eq: $schoolId}}) {\n id\n role_code\n }\n }\n";
|
|
46
|
+
export var GET_CLASSROOM_BY_USER_IDS = "\n query getClassroomByUserIds($schoolYearId: Int!, $userIds: [Int!]!) {\n classroom_student(\n where: {\n deleted_at: { _is_null: true }\n user:{id:{_in:$userIds}}\n classroom: {\n deleted_at: { _is_null: true }\n school_year_id: { _eq: $schoolYearId }\n }\n }\n ) {\n user{\n id\n }\n classroom {\n id\n name\n grade_id\n grade {\n id\n educational_level_id\n }\n program_id\n school_year_id\n program {\n name\n }\n }\n }\n}\n";
|
|
47
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/graphql/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAG1D,MAAM,CAAC,IAAM,gBAAgB,GAAG,22BA2C/B,CAAA;AAED,IAAM,gBAAgB,GAAG,UAAC,MAAiB,EAAE,YAAoB,EAAE,QAAgB;;IACjF,IAAM,aAAa;QACjB,GAAC,SAAS,CAAC,OAAO,IAAG,+ZAS2E,YAAY,8KAS3G;QACD,GAAC,SAAS,CAAC,KAAK,IAAG,sPASlB;QACD,GAAC,SAAS,CAAC,OAAO,IAAG,seAoBc,YAAY,iDACjB,QAAQ,qsBA6BrC;QACD,GAAC,SAAS,CAAC,UAAU,IAAG,EAAE;WAC3B,CAAA;IAED,OAAO,aAAa,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC,CAAA;AAED,IAAM,WAAW,GAAG,UAAC,KAAa,IAAK,OAAA,iBAAiB,CAAC,EAAE,KAAK,KAAK,EAA9B,CAA8B,CAAA;AACrE,IAAM,qBAAqB,GAAG,UAAC,EAAyE;QAAvE,SAAS,eAAA,EAAE,YAAY,kBAAA,EAAE,MAAM,YAAA;IACtD,IAAA,WAAW,GAAkC,SAAS,YAA3C,EAAE,kBAAkB,GAAc,SAAS,mBAAvB,EAAE,OAAO,GAAK,SAAS,QAAd,CAAc;IAC9D,IAAI,MAAM,KAAK,SAAS,CAAC,KAAK,EAAE,CAAC;QAC/B,OAAO,kBACH,iHAGM,WACT,CAAA;IACH,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,iBAAiB,CAAC,EAAE,EAA7B,CAA6B,CAAC,EAAE,CAAC;QAC9F,0DAA0D;QAC1D,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAM,wBAAwB,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;IACjE,IAAM,aAAa,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAC3C,IAAM,iBAAiB,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;IACnD,IAAI,MAAM,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,8NAOK,iBAAiB,CAAC,CAAC,CAAC,mBAAY,WAAW,MAAG,CAAC,CAAC,CAAC,EAAE,kDAC9B,YAAY,uDAE/B,aAAa,CAAC,CAAC,CAAC,mBAAY,OAAO,MAAG,CAAC,CAAC,CAAC,EAAE,+BAC3C,wBAAwB,CAAC,CAAC,CAAC,qCAA8B,kBAAkB,MAAG,CAAC,CAAC,CAAC,EAAE,kGAO5F,CAAA;IACP,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,6CAGD,wBAAwB;YACtB,CAAC,CAAC,uLAGmC,kBAAkB,8CAEjD;YACN,CAAC,CAAC,EAAE,uBAGN,aAAa,IAAI,iBAAiB;YAChC,CAAC,CAAC,6PAK+B,YAAY,sCACjC,iBAAiB,CAAC,CAAC,CAAC,mBAAY,WAAW,MAAG,CAAC,CAAC,CAAC,EAAE,qCACnD,aAAa,CAAC,CAAC,CAAC,yBAAkB,OAAO,MAAG,CAAC,CAAC,CAAC,EAAE,4FAIvD;YACN,CAAC,CAAC,EAAE,gCAKX,CAAA;IACH,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAAC,EAAiE;QAA/D,SAAS,eAAA,EAAE,QAAQ,cAAA,EAAE,YAAY,kBAAA,EAAE,MAAM,YAAA;IAA2B,OAAA,iRAajG,qBAAqB,CAAC,EAAE,MAAM,QAAA,EAAE,YAAY,cAAA,EAAE,SAAS,WAAA,EAAE,CAAC,4aAiB5D,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,8LAOpD;AArCuG,CAqCvG,CAAA;AAEJ,MAAM,CAAC,IAAM,kBAAkB,GAAG,y3BA2CjC,CAAA;AAED,MAAM,CAAC,IAAM,wBAAwB,GAAG,i5DAqFvC,CAAA;AACD,MAAM,CAAC,IAAM,mBAAmB,GAAG,wKAOlC,CAAA;AAED,MAAM,CAAC,IAAM,yBAAyB,GAAG,8iBA+BxC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { GET_SELECT_QUERY } from '../graphql/query';
|
|
4
|
+
import PHXFuncGetLoggedInfo from '../../Func/getLoginInfo';
|
|
5
|
+
import { PHXClientQueryV3 } from '../../Func/GRPC/PHXGrpcClientV3';
|
|
6
|
+
export var useGetDataSelectTarget = function (_a) {
|
|
7
|
+
var schoolYearId = _a.schoolYearId;
|
|
8
|
+
var _b = useState({
|
|
9
|
+
EDUCATIONAL_LEVEL: [],
|
|
10
|
+
GRADE: [],
|
|
11
|
+
CLASSROOM: [],
|
|
12
|
+
DEPARTMENT: [],
|
|
13
|
+
ALL: [],
|
|
14
|
+
}), selectOptions = _b[0], setSelectOptions = _b[1];
|
|
15
|
+
var _c = useState(true), loading = _c[0], setLoading = _c[1];
|
|
16
|
+
var userInfo = PHXFuncGetLoggedInfo();
|
|
17
|
+
var getDataSelect = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
18
|
+
var _a, classroom, department, educational_level, grade, e_1;
|
|
19
|
+
return __generator(this, function (_b) {
|
|
20
|
+
switch (_b.label) {
|
|
21
|
+
case 0:
|
|
22
|
+
setLoading(true);
|
|
23
|
+
_b.label = 1;
|
|
24
|
+
case 1:
|
|
25
|
+
_b.trys.push([1, 3, 4, 5]);
|
|
26
|
+
return [4 /*yield*/, PHXClientQueryV3({
|
|
27
|
+
query: GET_SELECT_QUERY,
|
|
28
|
+
variables: {
|
|
29
|
+
schoolId: userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id,
|
|
30
|
+
schoolYearId: schoolYearId,
|
|
31
|
+
},
|
|
32
|
+
})];
|
|
33
|
+
case 2:
|
|
34
|
+
_a = (_b.sent()).data, classroom = _a.classroom, department = _a.department, educational_level = _a.educational_level, grade = _a.grade;
|
|
35
|
+
setSelectOptions({
|
|
36
|
+
EDUCATIONAL_LEVEL: educational_level,
|
|
37
|
+
GRADE: grade,
|
|
38
|
+
CLASSROOM: classroom,
|
|
39
|
+
DEPARTMENT: department,
|
|
40
|
+
ALL: [],
|
|
41
|
+
});
|
|
42
|
+
return [3 /*break*/, 5];
|
|
43
|
+
case 3:
|
|
44
|
+
e_1 = _b.sent();
|
|
45
|
+
console.error(e_1);
|
|
46
|
+
return [3 /*break*/, 5];
|
|
47
|
+
case 4:
|
|
48
|
+
setLoading(false);
|
|
49
|
+
return [7 /*endfinally*/];
|
|
50
|
+
case 5: return [2 /*return*/];
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}); };
|
|
54
|
+
useEffect(function () {
|
|
55
|
+
if (schoolYearId) {
|
|
56
|
+
getDataSelect();
|
|
57
|
+
}
|
|
58
|
+
}, [schoolYearId]);
|
|
59
|
+
return { selectOptions: selectOptions, loading: loading };
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=use-get-data-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-get-data-select.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/hooks/use-get-data-select.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,oBAAoB,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAElE,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,EAA0C;QAAxC,YAAY,kBAAA;IAC7C,IAAA,KAAoC,QAAQ,CAAiB;QACjE,iBAAiB,EAAE,EAAE;QACrB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,EAAE;QACd,GAAG,EAAE,EAAE;KACR,CAAC,EANK,aAAa,QAAA,EAAE,gBAAgB,QAMpC,CAAA;IACI,IAAA,KAAwB,QAAQ,CAAC,IAAI,CAAC,EAArC,OAAO,QAAA,EAAE,UAAU,QAAkB,CAAA;IAC5C,IAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAA;IAEvC,IAAM,aAAa,GAAG;;;;;oBACpB,UAAU,CAAC,IAAI,CAAC,CAAA;;;;oBAIV,qBAAM,gBAAgB,CAAC;4BACzB,KAAK,EAAE,gBAAgB;4BACvB,SAAS,EAAE;gCACT,QAAQ,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS;gCAC7B,YAAY,cAAA;6BACb;yBACF,CAAC,EAAA;;oBAPA,KACE,CAAA,SAMF,CAAA,KAPyD,EAAjD,SAAS,eAAA,EAAE,UAAU,gBAAA,EAAE,iBAAiB,uBAAA,EAAE,KAAK,WAAA;oBASzD,gBAAgB,CAAC;wBACf,iBAAiB,EAAE,iBAAiB;wBACpC,KAAK,EAAE,KAAK;wBACZ,SAAS,EAAE,SAAS;wBACpB,UAAU,EAAE,UAAU;wBACtB,GAAG,EAAE,EAAE;qBACR,CAAC,CAAA;;;;oBAEF,OAAO,CAAC,KAAK,CAAC,GAAC,CAAC,CAAA;;;oBAEhB,UAAU,CAAC,KAAK,CAAC,CAAA;;;;;SAEpB,CAAA;IAED,SAAS,CAAC;QACR,IAAI,YAAY,EAAE,CAAC;YACjB,aAAa,EAAE,CAAA;QACjB,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAElB,OAAO,EAAE,aAAa,eAAA,EAAE,OAAO,SAAA,EAAE,CAAA;AACnC,CAAC,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ITargetSelectedData } from '../type/target';
|
|
2
|
+
export type TDataSubmit = {
|
|
3
|
+
id?: string;
|
|
4
|
+
name: string;
|
|
5
|
+
school_year_id: number;
|
|
6
|
+
target: Array<ITargetSelectedData>;
|
|
7
|
+
};
|
|
8
|
+
export declare const useTargetSelect: () => {
|
|
9
|
+
handleInsertTarget: ({ data }: {
|
|
10
|
+
data: TDataSubmit;
|
|
11
|
+
}) => Promise<{
|
|
12
|
+
id: number | null;
|
|
13
|
+
}>;
|
|
14
|
+
handleUpdateTargetByRole: ({ data, id }: {
|
|
15
|
+
data: TDataSubmit;
|
|
16
|
+
id: string;
|
|
17
|
+
}) => Promise<void>;
|
|
18
|
+
handleUpdateTarget: (id: string | undefined, data: any) => Promise<void>;
|
|
19
|
+
};
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { __assign, __awaiter, __generator, __rest } from "tslib";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { ERoleCode, FILTER_BY } from '../constant';
|
|
4
|
+
import { INSERT_TARGET_MUTATION, UPDATE_TARGET_BY_PK_MUTATION, UPDATE_TARGET_BY_ROLE_MUTATION, } from '../graphql/mutation';
|
|
5
|
+
import { GET_LIST_ROLE_QUERY } from '../graphql/query';
|
|
6
|
+
import { getObjectType } from '../ultis/get-object-type';
|
|
7
|
+
import PHXFuncGetLoggedInfo from '../../Func/getLoginInfo';
|
|
8
|
+
import PHXGetCurrentYearWithTermV3 from '../../Func/SchoolYearV3/getSchoolYearV3';
|
|
9
|
+
import { PHXClientMutationV3, PHXClientQueryV3 } from '../../Func/GRPC/PHXGrpcClientV3';
|
|
10
|
+
export var useTargetSelect = function () {
|
|
11
|
+
var userInfo = PHXFuncGetLoggedInfo();
|
|
12
|
+
var schoolYearId = PHXGetCurrentYearWithTermV3();
|
|
13
|
+
var _a = useState([]), roles = _a[0], setRoles = _a[1];
|
|
14
|
+
var getDataTargetSubmit = function (data, targetId) {
|
|
15
|
+
var result = [];
|
|
16
|
+
var schoolId = userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id;
|
|
17
|
+
data.forEach(function (item) {
|
|
18
|
+
var _a;
|
|
19
|
+
var filter = item.filter, notifyWith = item.notifyWith, target = item.target;
|
|
20
|
+
var roleId = (_a = roles.find(function (role) { return role.role_code === target; })) === null || _a === void 0 ? void 0 : _a.id;
|
|
21
|
+
if (!roleId && target !== ERoleCode.DEPARTMENT)
|
|
22
|
+
return;
|
|
23
|
+
var isAll = filter.some(function (f) { return f.filterBy === FILTER_BY.ALL; });
|
|
24
|
+
if (isAll) {
|
|
25
|
+
result.push(__assign({ role_id: roleId, is_all: true, notify_with: notifyWith, school_id: schoolId, object_type: getObjectType(target) }, (targetId ? { target_id: targetId } : {})));
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
var submitItem = __assign({ role_id: roleId, school_id: schoolId, notify_with: notifyWith, object_type: getObjectType(target), target_educational_levels: { data: [] }, target_grades: { data: [] }, target_classrooms: { data: [] }, target_users: { data: [] }, target_departments: { data: [] } }, (targetId ? { target_id: targetId } : {}));
|
|
29
|
+
filter.forEach(function (f) {
|
|
30
|
+
var filterBy = f.filterBy, filterValues = f.filterValues;
|
|
31
|
+
if (filterBy === FILTER_BY.EDUCATIONAL_LEVEL) {
|
|
32
|
+
submitItem.target_educational_levels.data = filterValues.map(function (v) { return ({
|
|
33
|
+
school_id: schoolId,
|
|
34
|
+
educational_level_id: v.id,
|
|
35
|
+
}); });
|
|
36
|
+
}
|
|
37
|
+
if (filterBy === FILTER_BY.GRADE) {
|
|
38
|
+
submitItem.target_grades.data = filterValues.map(function (v) { return ({
|
|
39
|
+
school_id: schoolId,
|
|
40
|
+
grade_id: v.id,
|
|
41
|
+
}); });
|
|
42
|
+
}
|
|
43
|
+
if (filterBy === FILTER_BY.CLASSROOM) {
|
|
44
|
+
submitItem.target_classrooms.data = filterValues.map(function (v) { return ({
|
|
45
|
+
school_id: schoolId,
|
|
46
|
+
classroom_id: v.id,
|
|
47
|
+
}); });
|
|
48
|
+
}
|
|
49
|
+
if (filterBy === FILTER_BY.DEPARTMENT) {
|
|
50
|
+
submitItem.target_departments.data = filterValues.map(function (v) { return ({
|
|
51
|
+
school_id: schoolId,
|
|
52
|
+
department_id: v.id,
|
|
53
|
+
}); });
|
|
54
|
+
}
|
|
55
|
+
if (filterBy === FILTER_BY.CUSTOM_LIST) {
|
|
56
|
+
submitItem.target_users.data = filterValues.map(function (v) { return ({
|
|
57
|
+
school_id: schoolId,
|
|
58
|
+
user_id: v.id,
|
|
59
|
+
}); });
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
result.push(submitItem);
|
|
63
|
+
});
|
|
64
|
+
return result;
|
|
65
|
+
};
|
|
66
|
+
var handleInsertTarget = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
|
|
67
|
+
var dataSubmit, returning;
|
|
68
|
+
var _c, _d, _e;
|
|
69
|
+
var data = _b.data;
|
|
70
|
+
return __generator(this, function (_f) {
|
|
71
|
+
switch (_f.label) {
|
|
72
|
+
case 0:
|
|
73
|
+
dataSubmit = {
|
|
74
|
+
school_id: userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id,
|
|
75
|
+
creator_id: userInfo === null || userInfo === void 0 ? void 0 : userInfo.id,
|
|
76
|
+
name: data.name,
|
|
77
|
+
school_year_id: (_d = (_c = schoolYearId === null || schoolYearId === void 0 ? void 0 : schoolYearId.current_school_year) === null || _c === void 0 ? void 0 : _c.schoolYear) === null || _d === void 0 ? void 0 : _d.id,
|
|
78
|
+
target_by_roles: {
|
|
79
|
+
data: getDataTargetSubmit(data.target),
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
return [4 /*yield*/, PHXClientMutationV3({
|
|
83
|
+
query: INSERT_TARGET_MUTATION,
|
|
84
|
+
variables: {
|
|
85
|
+
data: dataSubmit,
|
|
86
|
+
},
|
|
87
|
+
isDelay: false,
|
|
88
|
+
})];
|
|
89
|
+
case 1:
|
|
90
|
+
returning = (_f.sent()).data.insert_user_segment_target.returning;
|
|
91
|
+
return [2 /*return*/, { id: (_e = returning[0]) === null || _e === void 0 ? void 0 : _e.id }];
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}); };
|
|
95
|
+
var handleUpdateTarget = function (id, data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
96
|
+
var e_1;
|
|
97
|
+
return __generator(this, function (_a) {
|
|
98
|
+
switch (_a.label) {
|
|
99
|
+
case 0:
|
|
100
|
+
if (!id)
|
|
101
|
+
return [2 /*return*/];
|
|
102
|
+
_a.label = 1;
|
|
103
|
+
case 1:
|
|
104
|
+
_a.trys.push([1, 3, , 4]);
|
|
105
|
+
return [4 /*yield*/, PHXClientMutationV3({
|
|
106
|
+
query: UPDATE_TARGET_BY_PK_MUTATION,
|
|
107
|
+
variables: {
|
|
108
|
+
id: id,
|
|
109
|
+
data: __assign(__assign({}, data), { updated_at: 'now' }),
|
|
110
|
+
},
|
|
111
|
+
isDelay: false,
|
|
112
|
+
})];
|
|
113
|
+
case 2:
|
|
114
|
+
_a.sent();
|
|
115
|
+
return [3 /*break*/, 4];
|
|
116
|
+
case 3:
|
|
117
|
+
e_1 = _a.sent();
|
|
118
|
+
console.error(e_1);
|
|
119
|
+
return [3 /*break*/, 4];
|
|
120
|
+
case 4: return [2 /*return*/];
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}); };
|
|
124
|
+
var handleUpdateTargetByRole = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
|
|
125
|
+
var target, rest, e_2;
|
|
126
|
+
var data = _b.data, id = _b.id;
|
|
127
|
+
return __generator(this, function (_c) {
|
|
128
|
+
switch (_c.label) {
|
|
129
|
+
case 0:
|
|
130
|
+
_c.trys.push([0, 3, , 4]);
|
|
131
|
+
target = data.target, rest = __rest(data, ["target"]);
|
|
132
|
+
return [4 /*yield*/, PHXClientMutationV3({
|
|
133
|
+
query: UPDATE_TARGET_BY_ROLE_MUTATION,
|
|
134
|
+
variables: {
|
|
135
|
+
targetId: id,
|
|
136
|
+
targetByRoles: getDataTargetSubmit(target, id),
|
|
137
|
+
},
|
|
138
|
+
isDelay: false,
|
|
139
|
+
})];
|
|
140
|
+
case 1:
|
|
141
|
+
_c.sent();
|
|
142
|
+
return [4 /*yield*/, handleUpdateTarget(id, {
|
|
143
|
+
name: rest.name,
|
|
144
|
+
school_year_id: rest.school_year_id,
|
|
145
|
+
})];
|
|
146
|
+
case 2:
|
|
147
|
+
_c.sent();
|
|
148
|
+
return [3 /*break*/, 4];
|
|
149
|
+
case 3:
|
|
150
|
+
e_2 = _c.sent();
|
|
151
|
+
console.error(e_2);
|
|
152
|
+
return [3 /*break*/, 4];
|
|
153
|
+
case 4: return [2 /*return*/];
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}); };
|
|
157
|
+
var initData = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
158
|
+
var role, e_3;
|
|
159
|
+
return __generator(this, function (_a) {
|
|
160
|
+
switch (_a.label) {
|
|
161
|
+
case 0:
|
|
162
|
+
_a.trys.push([0, 2, , 3]);
|
|
163
|
+
return [4 /*yield*/, PHXClientQueryV3({
|
|
164
|
+
query: GET_LIST_ROLE_QUERY,
|
|
165
|
+
variables: {
|
|
166
|
+
schoolId: userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id,
|
|
167
|
+
},
|
|
168
|
+
isDelay: false,
|
|
169
|
+
})];
|
|
170
|
+
case 1:
|
|
171
|
+
role = (_a.sent()).data.role;
|
|
172
|
+
setRoles(role);
|
|
173
|
+
return [3 /*break*/, 3];
|
|
174
|
+
case 2:
|
|
175
|
+
e_3 = _a.sent();
|
|
176
|
+
console.error(e_3);
|
|
177
|
+
return [3 /*break*/, 3];
|
|
178
|
+
case 3: return [2 /*return*/];
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
}); };
|
|
182
|
+
useEffect(function () {
|
|
183
|
+
initData();
|
|
184
|
+
}, []);
|
|
185
|
+
return { handleInsertTarget: handleInsertTarget, handleUpdateTargetByRole: handleUpdateTargetByRole, handleUpdateTarget: handleUpdateTarget };
|
|
186
|
+
};
|
|
187
|
+
//# sourceMappingURL=use-target-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-target-select.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/hooks/use-target-select.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/FormTarget/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA;AAC7B,cAAc,+BAA+B,CAAA;AAC7C,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { ENotifyWith, ERoleCode, FILTER_BY } from '../constant';
|
|
2
|
+
export interface IQueryBuilderProps {
|
|
3
|
+
target: ERoleCode;
|
|
4
|
+
schoolYearId: number;
|
|
5
|
+
schoolId: number;
|
|
6
|
+
condition: {
|
|
7
|
+
gradeId: number;
|
|
8
|
+
educationalLevelId: number;
|
|
9
|
+
classroomId: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export type TFilterBy = (typeof FILTER_BY)[keyof typeof FILTER_BY];
|
|
13
|
+
export type TTarget = (typeof ERoleCode)[keyof typeof ERoleCode];
|
|
14
|
+
export type TParent = {
|
|
15
|
+
id: number;
|
|
16
|
+
relationship_code: string;
|
|
17
|
+
full_name: string;
|
|
18
|
+
};
|
|
19
|
+
export interface IFilterValueItem {
|
|
20
|
+
id: number;
|
|
21
|
+
name: string;
|
|
22
|
+
code: string;
|
|
23
|
+
phone?: string;
|
|
24
|
+
email?: string;
|
|
25
|
+
full_name: string;
|
|
26
|
+
location?: string;
|
|
27
|
+
classroom?: string;
|
|
28
|
+
educational_level?: string;
|
|
29
|
+
grade?: string;
|
|
30
|
+
educationalLevelIds?: Array<number>;
|
|
31
|
+
gradeIds?: Array<number>;
|
|
32
|
+
classroomIds?: Array<number>;
|
|
33
|
+
parents?: Array<TParent>;
|
|
34
|
+
}
|
|
35
|
+
export interface FilterItem {
|
|
36
|
+
filterBy: TFilterBy;
|
|
37
|
+
filterValues: Array<IFilterValueItem>;
|
|
38
|
+
}
|
|
39
|
+
export interface ITargetSelectedData {
|
|
40
|
+
target: ERoleCode;
|
|
41
|
+
notifyWith?: ENotifyWith;
|
|
42
|
+
filter: Array<FilterItem>;
|
|
43
|
+
}
|
|
44
|
+
export type TSelectOptionItem = {
|
|
45
|
+
id: number;
|
|
46
|
+
name: string;
|
|
47
|
+
code: string;
|
|
48
|
+
educational_level_id?: number;
|
|
49
|
+
grade?: {
|
|
50
|
+
id: number;
|
|
51
|
+
educational_level_id: number;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
export interface ISelectOptions {
|
|
55
|
+
EDUCATIONAL_LEVEL: Array<TSelectOptionItem>;
|
|
56
|
+
GRADE: Array<TSelectOptionItem>;
|
|
57
|
+
CLASSROOM: Array<TSelectOptionItem>;
|
|
58
|
+
DEPARTMENT: Array<TSelectOptionItem>;
|
|
59
|
+
ALL: Array<TSelectOptionItem>;
|
|
60
|
+
}
|
|
61
|
+
export interface ITargetSelectProps {
|
|
62
|
+
targetId?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface IQueryBuilderProps {
|
|
65
|
+
target: ERoleCode;
|
|
66
|
+
schoolYearId: number;
|
|
67
|
+
schoolId: number;
|
|
68
|
+
condition: {
|
|
69
|
+
gradeId: number;
|
|
70
|
+
educationalLevelId: number;
|
|
71
|
+
classroomId: number;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export interface IEducationalLevelGroup {
|
|
75
|
+
educational_level_map_groups: Array<{
|
|
76
|
+
educational_level_id: number;
|
|
77
|
+
}>;
|
|
78
|
+
}
|
|
79
|
+
export interface IProfile {
|
|
80
|
+
user_code: string;
|
|
81
|
+
grade: {
|
|
82
|
+
id: number;
|
|
83
|
+
name: string;
|
|
84
|
+
};
|
|
85
|
+
program_map_educational_level?: {
|
|
86
|
+
educational_level: {
|
|
87
|
+
code: string;
|
|
88
|
+
name: string;
|
|
89
|
+
id: number;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
teacher_subject_assignments?: Array<{
|
|
93
|
+
classroom_teachers: Array<{
|
|
94
|
+
teacher_type: number;
|
|
95
|
+
classroom: {
|
|
96
|
+
id: number;
|
|
97
|
+
grade_id: number;
|
|
98
|
+
};
|
|
99
|
+
}>;
|
|
100
|
+
}>;
|
|
101
|
+
educational_level_group?: IEducationalLevelGroup;
|
|
102
|
+
}
|
|
103
|
+
export interface IClassRoom {
|
|
104
|
+
id: number;
|
|
105
|
+
name: string;
|
|
106
|
+
grade_id: number;
|
|
107
|
+
program_id: number;
|
|
108
|
+
school_year_id: number;
|
|
109
|
+
program: {
|
|
110
|
+
name: string;
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
export interface IClassroomStudent {
|
|
114
|
+
id: number;
|
|
115
|
+
classroom: IClassRoom;
|
|
116
|
+
}
|
|
117
|
+
export interface IRelationshipUser {
|
|
118
|
+
parent_id: number;
|
|
119
|
+
relationship_code: string;
|
|
120
|
+
user: {
|
|
121
|
+
gender: number;
|
|
122
|
+
full_name: string;
|
|
123
|
+
phone_number: string;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
export interface IUserRole {
|
|
127
|
+
role: {
|
|
128
|
+
name: string;
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
export interface IStudentData {
|
|
132
|
+
id: number;
|
|
133
|
+
full_name: string;
|
|
134
|
+
email?: string;
|
|
135
|
+
phone_number?: string;
|
|
136
|
+
profile_student: IProfile;
|
|
137
|
+
classroom_students: Array<IClassroomStudent>;
|
|
138
|
+
relationshipUsersByStudentId: Array<IRelationshipUser>;
|
|
139
|
+
user_roles: Array<IUserRole>;
|
|
140
|
+
}
|
|
141
|
+
export interface ITeacherData {
|
|
142
|
+
id: number;
|
|
143
|
+
full_name: string;
|
|
144
|
+
email: string;
|
|
145
|
+
phone_number: string;
|
|
146
|
+
profile_teacher: IProfile;
|
|
147
|
+
user_roles: Array<IUserRole>;
|
|
148
|
+
}
|
|
149
|
+
export interface IStaff {
|
|
150
|
+
id: number;
|
|
151
|
+
full_name: string;
|
|
152
|
+
email: string;
|
|
153
|
+
phone_number: string;
|
|
154
|
+
profile_staff: IProfile;
|
|
155
|
+
user_roles: Array<IUserRole>;
|
|
156
|
+
}
|
|
157
|
+
export type TTargetData = IStudentData | ITeacherData | IStaff;
|
|
158
|
+
export interface ITargetGroupBuilderProps {
|
|
159
|
+
targetId?: string;
|
|
160
|
+
onChange?(target: ITargetSelectedData): void;
|
|
161
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/type/target.ts"],"names":[],"mappings":""}
|