| @@ -4,8 +4,8 @@ | |||
| <meta charset="UTF-8" /> | |||
| <link rel="icon" type="image/svg+xml" href="/logo_1.jpg" /> | |||
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |||
| <title>后台管理系统</title> | |||
| <script type="module" crossorigin src="/assets/index-fDuc1V1b.js"></script> | |||
| <title>菊城人才市场后台管理</title> | |||
| <script type="module" crossorigin src="/assets/index-03Q9IgGe.js"></script> | |||
| <link rel="stylesheet" crossorigin href="/assets/index-7KXeZgtg.css"> | |||
| </head> | |||
| <body> | |||
| @@ -4,7 +4,7 @@ | |||
| <meta charset="UTF-8" /> | |||
| <link rel="icon" type="image/svg+xml" href="/logo_1.jpg" /> | |||
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |||
| <title>后台管理系统</title> | |||
| <title>菊城人才市场后台管理</title> | |||
| </head> | |||
| <body> | |||
| <div id="app"></div> | |||
| @@ -41,7 +41,7 @@ instance.interceptors.response.use(function (response) { | |||
| window.location.reload(); | |||
| router.replace('/login'); | |||
| case 403: | |||
| // message.warning(response.data.msg); | |||
| message.warning(response.data.msg); | |||
| break; | |||
| case 600: | |||
| if(response.data.errors) { | |||
| @@ -82,6 +82,6 @@ export const httpPost : Function = (url : string, data : object, cb : Function) | |||
| const resData = res; | |||
| typeHelper.isFunction(cb) && cb(resData); | |||
| }).catch(err => { | |||
| // cb(err.response) | |||
| cb(err.response) | |||
| }) | |||
| } | |||
| @@ -5,8 +5,8 @@ import dayjs, { Dayjs } from 'dayjs'; | |||
| import 'dayjs/locale/zh-cn'; | |||
| dayjs.locale('zh-cn'); | |||
| import { message } from 'ant-design-vue'; | |||
| import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; | |||
| import { Modal } from 'ant-design-vue'; | |||
| interface CommonInterface { | |||
| model ?: CommonType.ModelType, | |||
| @@ -140,6 +140,8 @@ export const useCommon = () => { | |||
| dayjs, | |||
| richOption, | |||
| message, | |||
| ExclamationCircleOutlined, | |||
| Modal, | |||
| disabledDate, | |||
| imageprefix, | |||
| openSearchModel, | |||
| @@ -36,25 +36,24 @@ const actions = { | |||
| state, | |||
| commit | |||
| }) { | |||
| try { | |||
| state.arrresult = []; | |||
| let res = await GetUserMenulist(); | |||
| res.data.menulist.map(item => { | |||
| pushItem(item) | |||
| }) | |||
| let arr = state.arrresult; | |||
| // let arr = ['permission', 'role', 'account', 'company', 'vip', 'member', 'homemake', 'homemakeType', 'homemakePosition', 'homemakeDemand', 'homemakeAppointment', 'job', 'department', 'jobSeeker', 'jobResume', 'jobFair', 'jobFairList', 'jobFairCompany', 'information', 'section', 'article', 'list', 'putIn', 'advertisementList', 'advertisement', 'activity', 'activityList', 'activityAddress', 'statistics', 'statisticsResume', 'statisticsResumeMajor','statisticsResumeAgeSex','statisticsResumeCertificateSkill','statisticsResumeEducation','statisticsResumeHolidaysAccommodation','statisticsResumeJobIntention','statisticsResumeTitleSkill','statisticsResumeWorkExperience']; | |||
| let routes = routerDynamic(routesModuleList, arr); | |||
| LayoutRoute.children.push(...routes); | |||
| commit('SET_MENU', LayoutRoute.children); | |||
| routerAdd(LayoutRoute); | |||
| let initialRoutes = routerInit(); | |||
| commit('SET_PERMISSION', [...initialRoutes]); | |||
| } catch(err) { | |||
| console.log(err) | |||
| message.error(err.data.msg, 3, onClose); | |||
| debugger | |||
| } | |||
| let res = await GetUserMenulist().catch((error) => { | |||
| setTimeout(() => { | |||
| sessionStorage.clear() | |||
| routerTo('/login') | |||
| window.location.reload() | |||
| }, 1500); | |||
| }); | |||
| res.data.menulist.map(item => { | |||
| pushItem(item) | |||
| }) | |||
| let arr = state.arrresult; | |||
| // let arr = ['permission', 'role', 'account', 'company', 'vip', 'member', 'homemake', 'homemakeType', 'homemakePosition', 'homemakeDemand', 'homemakeAppointment', 'job', 'department', 'jobSeeker', 'jobResume', 'jobFair', 'jobFairList', 'jobFairCompany', 'information', 'section', 'article', 'list', 'putIn', 'advertisementList', 'advertisement', 'activity', 'activityList', 'activityAddress', 'statistics', 'statisticsResume', 'statisticsResumeMajor','statisticsResumeAgeSex','statisticsResumeCertificateSkill','statisticsResumeEducation','statisticsResumeHolidaysAccommodation','statisticsResumeJobIntention','statisticsResumeTitleSkill','statisticsResumeWorkExperience']; | |||
| let routes = routerDynamic(routesModuleList, arr); | |||
| LayoutRoute.children.push(...routes); | |||
| commit('SET_MENU', LayoutRoute.children); | |||
| routerAdd(LayoutRoute); | |||
| let initialRoutes = routerInit(); | |||
| commit('SET_PERMISSION', [...initialRoutes]); | |||
| } | |||
| }; | |||
| @@ -66,7 +65,7 @@ const onClose = () => { | |||
| } | |||
| const pushItem = (item : Object) => { | |||
| state.arrresult.push({action:item.action, name:item.name}) | |||
| state.arrresult.push({ action: item.action, name: item.name }) | |||
| if (item.childs) { | |||
| for (const child of item.childs) { | |||
| pushItem(child) | |||
| @@ -43,8 +43,6 @@ | |||
| commomParams.value.search.cate = ''; | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -29,8 +29,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -29,8 +29,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -40,8 +40,6 @@ | |||
| commomParams.value.search.company_id = 0; | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -71,8 +71,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| },{ | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -46,8 +46,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| },{ | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -37,8 +37,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -30,8 +30,6 @@ | |||
| watch(() => props.search_params, (newVal) => { | |||
| emit('searchData', commomParams.value.search) | |||
| }, { | |||
| immediate: true | |||
| }) | |||
| const getData = () => { | |||
| @@ -6,6 +6,7 @@ | |||
| <a-row :gutter="10"> | |||
| <!-- <a-col><a-button type="primary" size="small" primary @click="edit(record)">编辑</a-button></a-col> --> | |||
| <a-col><a-button type="primary" size="small" primary @click="detail(record)">预览</a-button></a-col> | |||
| <a-col><a-button type="primary" size="small" primary @click="audit(record)">审核</a-button></a-col> | |||
| </a-row> | |||
| </template> | |||
| </a-c-table> | |||
| @@ -14,42 +15,42 @@ | |||
| </template> | |||
| <script lang="ts" setup> | |||
| import { ref, onMounted, watch, computed } from 'vue'; | |||
| import { ref, onMounted, watch, computed , createVNode} from 'vue'; | |||
| import ResumeSearch from '@/views/jobSeeker/resume/search/index.vue'; | |||
| // import ResumeAdd from '@/views/jobSeeker/resume/add/add.vue'; | |||
| import ResumeDetail from '@/views/jobSeeker/resume/detail/detail.vue'; | |||
| import { PostJobseekerList } from '@/apis/models'; | |||
| import { PostJobseekerList } from '@/apis/models'; | |||
| import { useCommon } from '@/hooks/useCommon'; | |||
| import { cols } from '@/views/jobSeeker/resume/columns'; | |||
| import { message } from 'ant-design-vue'; | |||
| let { store, commomParams, showModal, showOtherModal1 } = useCommon(); | |||
| let { store, commomParams, showModal, showOtherModal1, message, ExclamationCircleOutlined, Modal } = useCommon(); | |||
| let loading = ref<Boolean>(true); | |||
| onMounted(() => { | |||
| getData(); | |||
| }) | |||
| const searchData = (data : object) => { | |||
| commomParams.value.search = data | |||
| getData(); | |||
| } | |||
| const clearData = (data : object) => { | |||
| if(data) { | |||
| if (data) { | |||
| commomParams.value.search = data | |||
| } else { | |||
| commomParams.value.search = { | |||
| page : 1, | |||
| pagesize : 10, | |||
| sort : 'id', | |||
| sortby : 'asc', | |||
| keyword : '' | |||
| page: 1, | |||
| pagesize: 10, | |||
| sort: 'id', | |||
| sortby: 'asc', | |||
| keyword: '' | |||
| } | |||
| } | |||
| getData(); | |||
| } | |||
| const getPage = (data:object) => { | |||
| const getPage = (data : object) => { | |||
| commomParams.value.search.page = data.current; | |||
| commomParams.value.search.pagesize = data.pageSize; | |||
| getData(); | |||
| @@ -73,11 +74,11 @@ | |||
| loading.value = false; | |||
| } | |||
| } | |||
| // 编辑 | |||
| let edit_record = ref<Object>(null) | |||
| const edit = (record: object) => { | |||
| const edit = (record : object) => { | |||
| edit_record.value = record; | |||
| showModal() | |||
| } | |||
| @@ -87,17 +88,31 @@ | |||
| const closeAdd = () => { | |||
| edit_record.value = null; | |||
| } | |||
| // 删除 | |||
| const delOneRole = (id: number) => { | |||
| const delOneRole = (id : number) => { | |||
| commomParams.value.delRecord = { id: id }; | |||
| PostRoleDel(commomParams.value.delRecord).then(res => { | |||
| message.success('删除成功'); | |||
| getData(); | |||
| }) | |||
| } | |||
| // 审核 | |||
| const audit = (id) => { | |||
| Modal.confirm({ | |||
| title: '是否要放入回收站', | |||
| icon: createVNode(ExclamationCircleOutlined), | |||
| onOk() { | |||
| }, | |||
| onCancel() { | |||
| }, | |||
| }); | |||
| } | |||
| let detail_record = ref<Object>(null) | |||
| const detail = (record) => { | |||
| detail_record.value = record; | |||