{"version":3,"sources":["webpack:///./src/views/student/StudentList.vue?58b7","webpack:///./src/types/AddressModel.ts","webpack:///./src/types/StudentModel.ts","webpack:///./src/views/student/StudentList.vue","webpack:///./src/views/student/BalanceFilter.vue","webpack:///./src/views/student/BalanceFilter.vue?0c62","webpack:///./src/views/student/BalanceFilter.vue?a00a","webpack:///./src/views/student/StudentList.vue?a9ff","webpack:///./src/views/student/StudentList.vue?5c56"],"names":["Address","BalanceFilterType","ProfileDetails","this","address","status","class","style","align","id","noOfActiveStudents","noOfActiveF1","noOfActiveNonI20","totalBalance","downloadStudents","search","searchValue","placeholder","openCreateStudent","data","pagedTableData","handleFilterChange","selectStudent","prop","label","min-width","sortable","class-name","scope","row","first_name","last_name","filters","studentStatuses","column-key","session_code","advisor_first_name","advisor_last_name","header","setBalanceFilter","balanceFilterData","balance","layout","page-size","pageSize","page-sizes","pageSizes","total","getFilteredStudentList","length","handleSizeChange","setPage","ref","visible","balanceFilterVisible","trigger","effect","default","wrap-class","filterType","Object","values","value","key","min","step","type","amount","confirmFilter","resetFilter","hideFilter","showFilter","testClickOutside","name","props","Function","selectRef","event","target","closest","render","components","BalanceFilter","router","studentListData","getStudentsSummary","today","Date","Promise","resolve","reject","ApiService","setHeader","get","then","assign","sort","a","b","localeCompare","catch","response","console","log","errors","Error","sizes","curr_length","push","i","val","page","pageValue","slice","bFilter","filter","toLowerCase","includes","student_id","phone","email","nationality","sevis_no","state","agent_name","some","x","filterBalance","admission_category","reduce","column","property","params","e","propertyName","getOwnPropertyNames","EqualTo","GreaterThanOrEqualTo","GreaterThan","LessThanOrEqualTo","LessThan","getTypes","forEach","element","statusObj","currentStudentList","map","StudentId","SevisNo","LastName","FirstName","Phone","Email","DOB","birth_date","format","address1","address2","city","zipcode","Nationality","Category","Agent","Advisor","Status","SessonCode","StartDate","start_date","EndDate","end_date","AttendanceRate","attendance_rate","Balance","fileName","CommonService","exportToXlsx","__scopeId"],"mappings":"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","file":"js/chunk-994854d0.7763516f.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./StudentList.vue?vue&type=style&index=0&id=0c684bb5&scoped=true&lang=css\"","export class Address {\r\n id : number;\r\n address1 : string;\r\n address2 : string;\r\n city : string;\r\n state : string;\r\n zipcode : string;\r\n }","import { Address } from \"./AddressModel\";\r\n\r\nexport class ProfileDetails {\r\n constructor (){\r\n this.address = new Address();\r\n this.status = 'Active';\r\n }\r\n\r\n id: number;\r\n first_name: string;\r\n last_name: string;\r\n student_id : string;\r\n sevis_no : string;\r\n phone: string;\r\n email: string;\r\n address : Address;\r\n nationality: string;\r\n sex: string;\r\n birth_date: Date;\r\n i20_start: Date;\r\n i20_end: Date;\r\n start_date: Date;\r\n end_date: Date;\r\n agent_id : number;\r\n admission_category : string;\r\n status : string;\r\n picture : string;\r\n finance_records: [];\r\n session_code : string;\r\n}\r\n\r\nexport enum BalanceFilterType {\r\n GreaterThan=\">\",\r\n GreaterThanOrEqualTo=\">=\",\r\n EqualTo=\"=\",\r\n LessThanOrEqualTo=\"<=\",\r\n LessThan=\"<\",\r\n}","\r\n \r\n \r\n # of active : {{noOfActiveStudents}}\r\n # of active F-1 : {{noOfActiveF1}} \r\n # of active non I-20: {{noOfActiveNonI20}} \r\n total tuition balance : ${{totalBalance}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Download\r\n \r\n \r\n \r\n \r\n \r\n \r\n Create\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{scope.row.first_name}} {{scope.row.last_name}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{scope.row.status}}\r\n {{scope.row.status}}\r\n {{scope.row.status}}\r\n {{scope.row.status}} \r\n \r\n \r\n \r\n \r\n {{scope.row.session_code}}\r\n N/A\r\n \r\n \r\n \r\n \r\n \r\n {{scope.row.advisor_first_name? scope.row.advisor_first_name + \" \" + scope.row.advisor_last_name : \"\"}}\r\n \r\n \r\n \r\n \r\n Balance\r\n \r\n \r\n \r\n {{scope.row.balance}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Confirm\r\n \r\n \r\n Reset\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n ","\r\n import { defineComponent, ref, toRefs, unref } from 'vue'\r\n import { BalanceFilterType } from '@/types/StudentModel'\r\n import { ClickOutside as vClickOutside } from 'element-plus/lib/directives'\r\nimport { isArguments } from 'lodash';\r\n \r\n export default defineComponent({\r\n name: 'balance-filter',\r\n props: {\r\n setBalanceFilter : {\r\n type:Function,\r\n default: () => ({}),\r\n },\r\n balanceFilterData: {} as any\r\n },\r\n setup(props) {\r\n const balanceFilterVisible = ref(false);\r\n const {balanceFilterData} = toRefs(props); \r\n const selectRef = ref();\r\n const data = ref({amount : balanceFilterData.value?.amount, filterType:balanceFilterData.value?.filterType})\r\n\r\n const hideFilter = () => {\r\n balanceFilterVisible.value = false\r\n }\r\n\r\n const showFilter = () => {\r\n balanceFilterVisible.value = true\r\n }\r\n\r\n const confirmFilter = () => {\r\n props.setBalanceFilter({filterType: data.value.filterType, amount: data.value.amount});\r\n hideFilter();\r\n }\r\n\r\n const resetFilter = () => {\r\n data.value.filterType = null;\r\n data.value.amount = 0;\r\n confirmFilter();\r\n }\r\n\r\n const testClickOutside = (event) =>{\r\n if (!event.target.closest('.el-select-dropdown')){\r\n hideFilter();\r\n }\r\n }\r\n\r\n return {\r\n balanceFilterVisible,\r\n hideFilter,\r\n showFilter,\r\n confirmFilter,\r\n BalanceFilterType,\r\n data,\r\n resetFilter,\r\n testClickOutside,\r\n selectRef\r\n }\r\n },\r\n })\r\n ","import { render } from \"./BalanceFilter.vue?vue&type=template&id=b4f9074a\"\nimport script from \"./BalanceFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./BalanceFilter.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\r\nimport { defineComponent, computed, ref, reactive, onMounted } from \"vue\";\r\nimport { setCurrentPageBreadcrumbs } from \"@/core/helpers/breadcrumb\";\r\nimport { useRouter } from \"vue-router\";\r\nimport ApiService from \"@/core/services/ApiService\";\r\nimport CommonService from \"@/core/services/CommonService\";\r\nimport moment from \"moment\";\r\nimport BalanceFilter from \"@/views/student/BalanceFilter.vue\";\r\nimport { BalanceFilterType } from \"@/types/StudentModel\";\r\nimport { useStore } from \"vuex\";\r\n\r\nexport default defineComponent({\r\n name: \"student-list\",\r\n components: {\r\n BalanceFilter\r\n },\r\n setup() {\r\n const router = useRouter();\r\n const studentListData : any[] = reactive([]);\r\n const studentStatuses = ref([]);\r\n const filters = reactive({status : []});\r\n const store = useStore();\r\n const balanceFilterData = reactive({filterType: null, amount: 0});\r\n\r\n const getStudentsSummary = async () => {\r\n var today = new Date();\r\n await new Promise((resolve, reject) => {\r\n ApiService.setHeader(); \r\n ApiService.get(\"student/date/\"+today)\r\n .then(({ data }) => {\r\n\r\n Object.assign(studentListData,data.data.sort((a, b) => a.status.localeCompare(b.status)));\r\n resolve(data.data);\r\n })\r\n .catch(({ response }) => {\r\n console.log('getStudentsSummary error => '+response.data.errors);\r\n reject(new Error ('getStudentsSummary error => '+response.data.errors));\r\n });\r\n });\r\n }\r\n\r\n const pageSize = ref(20);\r\n const pageSizes = computed(()=>{\r\n let sizes = [20];\r\n let curr_length = getFilteredStudentList().length;\r\n\r\n if(curr_length > 20){\r\n sizes.push(50);\r\n if(curr_length >50){\r\n let i = 0;\r\n while(i {\r\n pageSize.value = val; \r\n }\r\n\r\n let page = reactive({pageValue : 1});\r\n\r\n const pagedTableData = computed(()=>{\r\n return getFilteredStudentList().slice(pageSize.value * page.pageValue - pageSize.value, pageSize.value * page.pageValue);\r\n })\r\n\r\n const setBalanceFilter = (bFilter) => {\r\n balanceFilterData.amount = bFilter.amount;\r\n balanceFilterData.filterType = bFilter.filterType;\r\n }\r\n\r\n const getFilteredStudentList = () => {\r\n return studentListData.filter(data => (!search \r\n || (data.first_name + \" \" + data.last_name).toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.student_id?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.phone?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.email?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.nationality?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.advisor_first_name && (data.advisor_first_name + \" \"+ data.advisor_last_name).toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.sevis_no?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.state?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n || data.agent_name?.toLowerCase().includes(search.searchValue.toLowerCase())\r\n && (filters.status.length > 0 ? filters.status.some(x=>x == data.status) : true)\r\n && (balanceFilterData && balanceFilterData.filterType != null ? filterBalance(balanceFilterData, data.balance): true)));\r\n }\r\n\r\n const search = reactive({searchValue : ''});\r\n\r\n const setPage = (val) => {\r\n page.pageValue = val;\r\n }\r\n\r\n const noOfActiveStudents = computed(()=>{\r\n return studentListData.filter(data => data.status =='Active').length;\r\n })\r\n\r\n const noOfActiveF1 = computed(()=>{\r\n return studentListData.filter(data => data.status =='Active' && data.admission_category == 'F-1').length;\r\n })\r\n\r\n const noOfActiveNonI20 = computed(()=>{\r\n return studentListData.filter(data => data.status =='Active' && data.admission_category == 'Non I-20').length;\r\n })\r\n\r\n const totalBalance = computed(()=>{\r\n return studentListData.reduce(function(a, b){return +a + +b['balance'];}, 0);\r\n })\r\n\r\n\r\n const selectStudent= (row, column) =>{\r\n if(column.property == \"student_id\"){\r\n router.push({ name: \"student-profile\", params: { id: row.id } });\r\n }\r\n }\r\n\r\n const openCreateStudent= () =>{\r\n router.push({ name: \"student-profile\", params: { id: 0 } });\r\n }\r\n\r\n const handleFilterChange = (e) =>{\r\n const propertyName = Object.getOwnPropertyNames(e)[0];\r\n const value = e[propertyName];\r\n\r\n if(propertyName == 'status-column'){\r\n filters.status = value;\r\n }\r\n }\r\n\r\n const filterBalance = (filter, balance) => {\r\n var amount = filter.amount;\r\n var filterType = filter.filterType;\r\n\r\n if(filterType == BalanceFilterType.EqualTo){\r\n return balance == amount;\r\n }\r\n else if(filterType == BalanceFilterType.GreaterThanOrEqualTo){\r\n return balance >= amount;\r\n }\r\n else if(filterType == BalanceFilterType.GreaterThan){\r\n return balance > amount;\r\n }\r\n else if(filterType == BalanceFilterType.LessThanOrEqualTo){\r\n return balance <= amount;\r\n }\r\n else if(filterType == BalanceFilterType.LessThan){\r\n return balance < amount;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n const getTypes = async() => {\r\n return new Promise((resolve, reject) => { \r\n ApiService.setHeader();\r\n ApiService.get(\"student/types\")\r\n .then(({ data }) => {\r\n data.studentStatuses.forEach(element => {\r\n var statusObj = {};\r\n statusObj['text'] = element;\r\n statusObj['value'] = element;\r\n studentStatuses.value.push(statusObj);\r\n });\r\n resolve(data.data);\r\n })\r\n .catch(({ response }) => {\r\n reject('getTypes student error => '+response.data.errors);\r\n console.log('getTypes student error => '+response.data.errors);\r\n });\r\n });\r\n }\r\n\r\n const downloadStudents = ()=>{\r\n let currentStudentList = getFilteredStudentList().map(x=>{ return { \r\n StudentId: x.student_id, \r\n SevisNo : x.sevis_no,\r\n LastName : x.last_name,\r\n FirstName : x.first_name, \r\n Phone : x.phone, \r\n Email : x.email,\r\n DOB : x.birth_date ? moment(x.birth_date).format('MM/DD/YYYY'): '',\r\n Address : (x.address1 || x.address2 || x.city || x.state || x.zipcode) ? x.address1 + \" \" + x.address2 + \" \" + x.city + \" \" + x.state + \" \" + x.zipcode : '',\r\n Nationality : x.nationality,\r\n Category : x.admission_category,\r\n Agent : x.agent_name,\r\n Advisor : x.advisor_first_name? x.advisor_first_name + \" \"+ x.advisor_last_name : '',\r\n Status : x.status,\r\n SessonCode : x.session_code,\r\n StartDate : x.start_date ? moment(x.start_date).format('MM/DD/YYYY'): '',\r\n EndDate : x.end_date ? moment(x.end_date).format('MM/DD/YYYY'): '',\r\n AttendanceRate : x.attendance_rate,\r\n Balance : x.balance \r\n };});\r\n let today = new Date();\r\n let fileName = 'StudentList_'+ moment(today).format('YYYYMMDDHHmmss');\r\n CommonService.exportToXlsx(currentStudentList, fileName);\r\n }\r\n\r\n onMounted(() => {\r\n getTypes();\r\n setCurrentPageBreadcrumbs(\"Student List\", [\"Student\"]);\r\n getStudentsSummary();\r\n });\r\n\r\n return {\r\n selectStudent,\r\n studentListData,\r\n pagedTableData,\r\n pageSize,\r\n pageSizes,\r\n search,\r\n studentStatuses,\r\n downloadStudents,\r\n handleSizeChange,\r\n getFilteredStudentList,\r\n noOfActiveStudents,\r\n noOfActiveF1,\r\n noOfActiveNonI20,\r\n totalBalance,\r\n setPage,\r\n openCreateStudent,\r\n filters,\r\n handleFilterChange,\r\n balanceFilterData,\r\n setBalanceFilter\r\n };\r\n },\r\n});\r\n","import { render } from \"./StudentList.vue?vue&type=template&id=0c684bb5&scoped=true\"\nimport script from \"./StudentList.vue?vue&type=script&lang=ts\"\nexport * from \"./StudentList.vue?vue&type=script&lang=ts\"\n\nimport \"./StudentList.vue?vue&type=style&index=0&id=0c684bb5&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-0c684bb5\"\n\nexport default script"],"sourceRoot":""}