<link rel="icon" type="image/svg+xml" href="/vite.svg" /> | <link rel="icon" type="image/svg+xml" href="/vite.svg" /> | ||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||
<title>Vite + Vue + TS</title> | <title>Vite + Vue + TS</title> | ||||
<script type="module" crossorigin src="/assets/index-K5riA1-W.js"></script> | |||||
<link rel="stylesheet" crossorigin href="/assets/index-RU36Lilx.css"> | |||||
<script type="module" crossorigin src="/assets/index-W7c0eAO7.js"></script> | |||||
<link rel="stylesheet" crossorigin href="/assets/index-tRwQDn9K.css"> | |||||
</head> | </head> | ||||
<body> | <body> | ||||
<div id="app"></div> | <div id="app"></div> |
"name": "job-pc", | "name": "job-pc", | ||||
"version": "0.0.0", | "version": "0.0.0", | ||||
"dependencies": { | "dependencies": { | ||||
"@vueup/vue-quill": "^1.2.0", | |||||
"ant-design-vue": "^4.0.0-rc.6", | "ant-design-vue": "^4.0.0-rc.6", | ||||
"axios": "^1.6.4", | "axios": "^1.6.4", | ||||
"dayjs": "^1.11.10", | |||||
"less": "^4.2.0", | "less": "^4.2.0", | ||||
"less-loader": "^11.1.3", | "less-loader": "^11.1.3", | ||||
"vue": "^3.3.11", | "vue": "^3.3.11", | ||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", | ||||
"integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==" | "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==" | ||||
}, | }, | ||||
"node_modules/@vueup/vue-quill": { | |||||
"version": "1.2.0", | |||||
"resolved": "https://registry.npmmirror.com/@vueup/vue-quill/-/vue-quill-1.2.0.tgz", | |||||
"integrity": "sha512-kd5QPSHMDpycklojPXno2Kw2JSiKMYduKYQckTm1RJoVDA557MnyUXgcuuDpry4HY/Rny9nGNcK+m3AHk94wag==", | |||||
"dependencies": { | |||||
"quill": "^1.3.7", | |||||
"quill-delta": "^4.2.2" | |||||
}, | |||||
"peerDependencies": { | |||||
"vue": "^3.2.41" | |||||
} | |||||
}, | |||||
"node_modules/@webassemblyjs/ast": { | "node_modules/@webassemblyjs/ast": { | ||||
"version": "1.11.6", | "version": "1.11.6", | ||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", | "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", | ||||
"integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", | "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", | ||||
"peer": true | "peer": true | ||||
}, | }, | ||||
"node_modules/call-bind": { | |||||
"version": "1.0.5", | |||||
"resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.5.tgz", | |||||
"integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", | |||||
"dependencies": { | |||||
"function-bind": "^1.1.2", | |||||
"get-intrinsic": "^1.2.1", | |||||
"set-function-length": "^1.1.1" | |||||
} | |||||
}, | |||||
"node_modules/caniuse-lite": { | "node_modules/caniuse-lite": { | ||||
"version": "1.0.30001574", | "version": "1.0.30001574", | ||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz", | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz", | ||||
"node": ">=6.0" | "node": ">=6.0" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/clone": { | |||||
"version": "2.1.2", | |||||
"resolved": "https://registry.npmmirror.com/clone/-/clone-2.1.2.tgz", | |||||
"integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", | |||||
"engines": { | |||||
"node": ">=0.8" | |||||
} | |||||
}, | |||||
"node_modules/combined-stream": { | "node_modules/combined-stream": { | ||||
"version": "1.0.8", | "version": "1.0.8", | ||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", | ||||
"integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", | "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", | ||||
"dev": true | "dev": true | ||||
}, | }, | ||||
"node_modules/deep-equal": { | |||||
"version": "1.1.2", | |||||
"resolved": "https://registry.npmmirror.com/deep-equal/-/deep-equal-1.1.2.tgz", | |||||
"integrity": "sha512-5tdhKF6DbU7iIzrIOa1AOUt39ZRm13cmL1cGEh//aqR8x9+tNfbywRf0n5FD/18OKMdo7DNEtrX2t22ZAkI+eg==", | |||||
"dependencies": { | |||||
"is-arguments": "^1.1.1", | |||||
"is-date-object": "^1.0.5", | |||||
"is-regex": "^1.1.4", | |||||
"object-is": "^1.1.5", | |||||
"object-keys": "^1.1.1", | |||||
"regexp.prototype.flags": "^1.5.1" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/define-data-property": { | |||||
"version": "1.1.1", | |||||
"resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.1.tgz", | |||||
"integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", | |||||
"dependencies": { | |||||
"get-intrinsic": "^1.2.1", | |||||
"gopd": "^1.0.1", | |||||
"has-property-descriptors": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/define-properties": { | |||||
"version": "1.2.1", | |||||
"resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz", | |||||
"integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", | |||||
"dependencies": { | |||||
"define-data-property": "^1.0.1", | |||||
"has-property-descriptors": "^1.0.0", | |||||
"object-keys": "^1.1.1" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/delayed-stream": { | "node_modules/delayed-stream": { | ||||
"version": "1.0.0", | "version": "1.0.0", | ||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", | ||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", | ||||
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" | ||||
}, | }, | ||||
"node_modules/eventemitter3": { | |||||
"version": "2.0.3", | |||||
"resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-2.0.3.tgz", | |||||
"integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg==" | |||||
}, | |||||
"node_modules/events": { | "node_modules/events": { | ||||
"version": "3.3.0", | "version": "3.3.0", | ||||
"resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", | ||||
"node": ">=0.8.x" | "node": ">=0.8.x" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/extend": { | |||||
"version": "3.0.2", | |||||
"resolved": "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz", | |||||
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" | |||||
}, | |||||
"node_modules/fast-deep-equal": { | "node_modules/fast-deep-equal": { | ||||
"version": "3.1.3", | "version": "3.1.3", | ||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | ||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", | ||||
"peer": true | "peer": true | ||||
}, | }, | ||||
"node_modules/fast-diff": { | |||||
"version": "1.2.0", | |||||
"resolved": "https://registry.npmmirror.com/fast-diff/-/fast-diff-1.2.0.tgz", | |||||
"integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" | |||||
}, | |||||
"node_modules/fast-json-stable-stringify": { | "node_modules/fast-json-stable-stringify": { | ||||
"version": "2.1.0", | "version": "2.1.0", | ||||
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", | ||||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0" | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/function-bind": { | |||||
"version": "1.1.2", | |||||
"resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", | |||||
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" | |||||
}, | |||||
"node_modules/functions-have-names": { | |||||
"version": "1.2.3", | |||||
"resolved": "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz", | |||||
"integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" | |||||
}, | |||||
"node_modules/get-intrinsic": { | |||||
"version": "1.2.2", | |||||
"resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz", | |||||
"integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", | |||||
"dependencies": { | |||||
"function-bind": "^1.1.2", | |||||
"has-proto": "^1.0.1", | |||||
"has-symbols": "^1.0.3", | |||||
"hasown": "^2.0.0" | |||||
} | |||||
}, | |||||
"node_modules/glob-to-regexp": { | "node_modules/glob-to-regexp": { | ||||
"version": "0.4.1", | "version": "0.4.1", | ||||
"resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", | ||||
"integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", | ||||
"peer": true | "peer": true | ||||
}, | }, | ||||
"node_modules/gopd": { | |||||
"version": "1.0.1", | |||||
"resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz", | |||||
"integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", | |||||
"dependencies": { | |||||
"get-intrinsic": "^1.1.3" | |||||
} | |||||
}, | |||||
"node_modules/graceful-fs": { | "node_modules/graceful-fs": { | ||||
"version": "4.2.11", | "version": "4.2.11", | ||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", | ||||
"node": ">=8" | "node": ">=8" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/has-property-descriptors": { | |||||
"version": "1.0.1", | |||||
"resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", | |||||
"integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", | |||||
"dependencies": { | |||||
"get-intrinsic": "^1.2.2" | |||||
} | |||||
}, | |||||
"node_modules/has-proto": { | |||||
"version": "1.0.1", | |||||
"resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz", | |||||
"integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/has-symbols": { | |||||
"version": "1.0.3", | |||||
"resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz", | |||||
"integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/has-tostringtag": { | |||||
"version": "1.0.0", | |||||
"resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz", | |||||
"integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", | |||||
"dependencies": { | |||||
"has-symbols": "^1.0.2" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/hasown": { | |||||
"version": "2.0.0", | |||||
"resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.0.tgz", | |||||
"integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", | |||||
"dependencies": { | |||||
"function-bind": "^1.1.2" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/he": { | "node_modules/he": { | ||||
"version": "1.2.0", | "version": "1.2.0", | ||||
"resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", | ||||
"node": ">=0.10.0" | "node": ">=0.10.0" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/is-arguments": { | |||||
"version": "1.1.1", | |||||
"resolved": "https://registry.npmmirror.com/is-arguments/-/is-arguments-1.1.1.tgz", | |||||
"integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", | |||||
"dependencies": { | |||||
"call-bind": "^1.0.2", | |||||
"has-tostringtag": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/is-date-object": { | |||||
"version": "1.0.5", | |||||
"resolved": "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.0.5.tgz", | |||||
"integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", | |||||
"dependencies": { | |||||
"has-tostringtag": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/is-plain-object": { | "node_modules/is-plain-object": { | ||||
"version": "3.0.1", | "version": "3.0.1", | ||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", | ||||
"node": ">=0.10.0" | "node": ">=0.10.0" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/is-regex": { | |||||
"version": "1.1.4", | |||||
"resolved": "https://registry.npmmirror.com/is-regex/-/is-regex-1.1.4.tgz", | |||||
"integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", | |||||
"dependencies": { | |||||
"call-bind": "^1.0.2", | |||||
"has-tostringtag": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/is-what": { | "node_modules/is-what": { | ||||
"version": "3.14.1", | "version": "3.14.1", | ||||
"resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", | "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", | ||||
"resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", | "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", | ||||
"integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" | "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" | ||||
}, | }, | ||||
"node_modules/lodash.clonedeep": { | |||||
"version": "4.5.0", | |||||
"resolved": "https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", | |||||
"integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" | |||||
}, | |||||
"node_modules/lodash.isequal": { | |||||
"version": "4.5.0", | |||||
"resolved": "https://registry.npmmirror.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz", | |||||
"integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" | |||||
}, | |||||
"node_modules/loose-envify": { | "node_modules/loose-envify": { | ||||
"version": "1.4.0", | "version": "1.4.0", | ||||
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", | ||||
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", | "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", | ||||
"peer": true | "peer": true | ||||
}, | }, | ||||
"node_modules/object-is": { | |||||
"version": "1.1.5", | |||||
"resolved": "https://registry.npmmirror.com/object-is/-/object-is-1.1.5.tgz", | |||||
"integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", | |||||
"dependencies": { | |||||
"call-bind": "^1.0.2", | |||||
"define-properties": "^1.1.3" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/object-keys": { | |||||
"version": "1.1.1", | |||||
"resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz", | |||||
"integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/parchment": { | |||||
"version": "1.1.4", | |||||
"resolved": "https://registry.npmmirror.com/parchment/-/parchment-1.1.4.tgz", | |||||
"integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg==" | |||||
}, | |||||
"node_modules/parse-node-version": { | "node_modules/parse-node-version": { | ||||
"version": "1.0.1", | "version": "1.0.1", | ||||
"resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", | "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", | ||||
"node": ">=6" | "node": ">=6" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/quill": { | |||||
"version": "1.3.7", | |||||
"resolved": "https://registry.npmmirror.com/quill/-/quill-1.3.7.tgz", | |||||
"integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==", | |||||
"dependencies": { | |||||
"clone": "^2.1.1", | |||||
"deep-equal": "^1.0.1", | |||||
"eventemitter3": "^2.0.3", | |||||
"extend": "^3.0.2", | |||||
"parchment": "^1.1.4", | |||||
"quill-delta": "^3.6.2" | |||||
} | |||||
}, | |||||
"node_modules/quill-delta": { | |||||
"version": "4.2.2", | |||||
"resolved": "https://registry.npmmirror.com/quill-delta/-/quill-delta-4.2.2.tgz", | |||||
"integrity": "sha512-qjbn82b/yJzOjstBgkhtBjN2TNK+ZHP/BgUQO+j6bRhWQQdmj2lH6hXG7+nwwLF41Xgn//7/83lxs9n2BkTtTg==", | |||||
"dependencies": { | |||||
"fast-diff": "1.2.0", | |||||
"lodash.clonedeep": "^4.5.0", | |||||
"lodash.isequal": "^4.5.0" | |||||
} | |||||
}, | |||||
"node_modules/quill/node_modules/fast-diff": { | |||||
"version": "1.1.2", | |||||
"resolved": "https://registry.npmmirror.com/fast-diff/-/fast-diff-1.1.2.tgz", | |||||
"integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==" | |||||
}, | |||||
"node_modules/quill/node_modules/quill-delta": { | |||||
"version": "3.6.3", | |||||
"resolved": "https://registry.npmmirror.com/quill-delta/-/quill-delta-3.6.3.tgz", | |||||
"integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==", | |||||
"dependencies": { | |||||
"deep-equal": "^1.0.1", | |||||
"extend": "^3.0.2", | |||||
"fast-diff": "1.1.2" | |||||
}, | |||||
"engines": { | |||||
"node": ">=0.10" | |||||
} | |||||
}, | |||||
"node_modules/randombytes": { | "node_modules/randombytes": { | ||||
"version": "2.1.0", | "version": "2.1.0", | ||||
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", | ||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", | ||||
"integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" | "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" | ||||
}, | }, | ||||
"node_modules/regexp.prototype.flags": { | |||||
"version": "1.5.1", | |||||
"resolved": "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", | |||||
"integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", | |||||
"dependencies": { | |||||
"call-bind": "^1.0.2", | |||||
"define-properties": "^1.2.0", | |||||
"set-function-name": "^2.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/resize-observer-polyfill": { | "node_modules/resize-observer-polyfill": { | ||||
"version": "1.5.1", | "version": "1.5.1", | ||||
"resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", | "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", | ||||
"randombytes": "^2.1.0" | "randombytes": "^2.1.0" | ||||
} | } | ||||
}, | }, | ||||
"node_modules/set-function-length": { | |||||
"version": "1.1.1", | |||||
"resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.1.1.tgz", | |||||
"integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", | |||||
"dependencies": { | |||||
"define-data-property": "^1.1.1", | |||||
"get-intrinsic": "^1.2.1", | |||||
"gopd": "^1.0.1", | |||||
"has-property-descriptors": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/set-function-name": { | |||||
"version": "2.0.1", | |||||
"resolved": "https://registry.npmmirror.com/set-function-name/-/set-function-name-2.0.1.tgz", | |||||
"integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", | |||||
"dependencies": { | |||||
"define-data-property": "^1.0.1", | |||||
"functions-have-names": "^1.2.3", | |||||
"has-property-descriptors": "^1.0.0" | |||||
}, | |||||
"engines": { | |||||
"node": ">= 0.4" | |||||
} | |||||
}, | |||||
"node_modules/shallow-equal": { | "node_modules/shallow-equal": { | ||||
"version": "1.2.1", | "version": "1.2.1", | ||||
"resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz", | "resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz", |
"less-loader": "^11.1.3", | "less-loader": "^11.1.3", | ||||
"vue": "^3.3.11", | "vue": "^3.3.11", | ||||
"vue-router": "^4.2.5", | "vue-router": "^4.2.5", | ||||
"vuex": "^4.0.2" | |||||
"vuex": "^4.0.2", | |||||
"@vueup/vue-quill": "^1.2.0", | |||||
"dayjs": "^1.11.10" | |||||
}, | }, | ||||
"devDependencies": { | "devDependencies": { | ||||
"@vitejs/plugin-vue": "^4.5.2", | "@vitejs/plugin-vue": "^4.5.2", |
<script setup lang="ts"> | |||||
import { ref } from 'vue' | |||||
defineProps<{ msg: string }>() | |||||
const count = ref(0) | |||||
</script> | |||||
<template> | |||||
<h1>{{ msg }}</h1> | |||||
<div class="card"> | |||||
<button type="button" @click="count++">count is {{ count }}</button> | |||||
<p> | |||||
Edit | |||||
<code>components/HelloWorld.vue</code> to test HMR | |||||
</p> | |||||
</div> | |||||
<p> | |||||
Check out | |||||
<a href="https://vuejs.org/guide/quick-start.html#local" target="_blank" | |||||
>create-vue</a | |||||
>, the official Vue + Vite starter | |||||
</p> | |||||
<p> | |||||
Install | |||||
<a href="https://github.com/vuejs/language-tools" target="_blank">Volar</a> | |||||
in your IDE for a better DX | |||||
</p> | |||||
<p class="read-the-docs">Click on the Vite and Vue logos to learn more</p> | |||||
</template> | |||||
<style scoped> | |||||
.read-the-docs { | |||||
color: #888; | |||||
} | |||||
</style> |
<template> | |||||
<a-menu v-model:selectedKeys="selectedKeys" @click="menuClick" | |||||
style="width: 100%;" mode="inline"> | |||||
<a-menu-item v-for="(item, index) in menuList" :key="item.key">{{item.name}}</a-menu-item> | |||||
</a-menu> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, computed, onMounted, watch,defineProps,defineEmits } from 'vue'; | |||||
let props = defineProps(['menu_list', 'selected_key']); | |||||
let emit = defineEmits(); | |||||
let menuList = ref<Object[]>(props.menu_list) | |||||
const selectedKeys = ref<string[]>(['1']); | |||||
watch(() => [props.menu_list, props.selected_key], (newVal) => { | |||||
menuList.value = newVal[0], | |||||
selectedKeys.value = newVal[1] | |||||
}) | |||||
const menuClick = (val) => { | |||||
emit('changeKey', { key: val.key }) | |||||
} | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<upload upload_txt="上传企业图片" @uploadSuccess="uploadPhotoSuccess" | |||||
:success_image="addOtherForm.photo_img" images_length="1"></upload> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
import Upload from '@/components/form/upload.vue'; | |||||
let addOtherForm = ref({ | |||||
photo_img: '', | |||||
}) | |||||
// 营业执照 | |||||
const uploadPhotoSuccess = (data : Object) => { | |||||
addOtherForm.value.photo_img = "http://114.132.85.7:8894" + data | |||||
createForm.value.photo = data | |||||
} | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<upload upload_txt="上传营业执照" @uploadSuccess="uploadPhotoSuccess" | |||||
:success_image="addOtherForm.photo_img" images_length="1"></upload> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
import Upload from '@/components/form/upload.vue'; | |||||
let addOtherForm = ref({ | |||||
photo_img: '', | |||||
}) | |||||
// 营业执照 | |||||
const uploadPhotoSuccess = (data : Object) => { | |||||
addOtherForm.value.photo_img = "http://114.132.85.7:8894" + data | |||||
createForm.value.photo = data | |||||
} | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<div style="display: flex;"> | |||||
<img v-if="imagesLength == 1 && imageUrl" :src="imageUrl" alt="avatar" width="200px" height="400px" | |||||
style="margin-right: 10px;" /> | |||||
<template v-else> | |||||
<template v-for="(item, index) in imagesList"> | |||||
<img :src="item.url" alt="avatar" width="100px" height="100px" style="margin-right: 10px;" /> | |||||
</template> | |||||
</template> | |||||
<div v-if="imagesList.length < imagesLength"> | |||||
<a-upload a-upload v-model:file-list="fileList" list-type="picture-card" class="avatar-uploader" | |||||
:show-upload-list="false" :before-upload="beforeUpload" :data="uploadData" | |||||
:customRequest="uploadCustom"> | |||||
<div class="ant-upload-text">{{uploadTxt}}</div> | |||||
</a-upload> | |||||
</div> | |||||
</div> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed, defineProps, watch, defineEmits } from 'vue'; | |||||
import axios from 'axios'; | |||||
import { message } from 'ant-design-vue'; | |||||
const props = defineProps(['upload_txt', 'success_image', 'images_length']); | |||||
const emit = defineEmits(); | |||||
const headers = ref<Object>({ | |||||
Authorization: sessionStorage.getItem('token'), | |||||
'X-Requested-With': null | |||||
}) | |||||
const uploadData = ref<Object>({ | |||||
image: '' | |||||
}) | |||||
let imagesList = ref<Object[]>([]) | |||||
let fileList = ref<Object[]>([]) | |||||
let imageUrl = ref<String>(props.success_image) // 图片路径 | |||||
let uploadTxt = ref<String>(props.upload_txt) | |||||
let imagesLength = ref<Number>(props.images_length) | |||||
watch(() => props.success_image, (newVal : string, oldVal : string) => { | |||||
imageUrl.value = newVal; | |||||
}) | |||||
const beforeUpload = (file) => { | |||||
uploadData.value.image = file | |||||
} | |||||
const uploadCustom = (e) => { | |||||
let formdata = new FormData() | |||||
formdata.append('image', e.file) | |||||
axios({ | |||||
url: 'http://114.132.85.7:8889/common/image/upload?imgtype=1', | |||||
method: 'post', | |||||
data: formdata, | |||||
headers: headers.value | |||||
}).then((res) => { | |||||
if (imagesLength.value === 1) { | |||||
imagesList.value = [{ | |||||
uid: '-1', // 文件唯一标识,建议设置为负数,防止和内部产生的 id 冲突 | |||||
name: e.file.name, // 文件名 | |||||
status: 'done', // 状态有:uploading done error removed | |||||
url: "http://114.132.85.7:8894" + res.data.data.filename | |||||
}] | |||||
} else { | |||||
if (imagesList.value.length < imagesLength.value) { | |||||
console.log(imagesList.value) | |||||
imagesList.value.push({ | |||||
uid: '-' + (imagesList.value.length + 1), // 文件唯一标识,建议设置为负数,防止和内部产生的 id 冲突 | |||||
name: e.file.name, // 文件名 | |||||
status: 'done', // 状态有:uploading done error removed | |||||
url: "http://114.132.85.7:8894" + res.data.data.filename | |||||
}) | |||||
} else { | |||||
message.danger('最多上传5张'); | |||||
} | |||||
} | |||||
message.success(`${props.upload_txt}成功`); | |||||
emit('uploadSuccess', res.data.data.filename) | |||||
}) | |||||
} | |||||
// const uploadChange = ({ file, fileList }) => { | |||||
// console.log(fileList) | |||||
// if (file.file.response) { | |||||
// message.success(`${props.upload_txt}成功`); | |||||
// emit('uploadSuccess', file.file.response) | |||||
// } | |||||
// } | |||||
</script> | |||||
<style scoped lang="less"> | |||||
.avatar-uploader>.ant-upload { | |||||
width: 128px; | |||||
height: 128px; | |||||
} | |||||
.ant-upload-select-picture-card i { | |||||
font-size: 32px; | |||||
color: #999; | |||||
} | |||||
.ant-upload-select-picture-card .ant-upload-text { | |||||
margin-top: 8px; | |||||
color: #666; | |||||
} | |||||
.ant-upload-select-picture-card .ant-upload-list-item { | |||||
width: 128px; | |||||
height: 128px; | |||||
margin-right: 8px; | |||||
} | |||||
</style> |
<template> | |||||
<a-table :data-source="dataSource" :columns="columns"> | |||||
<template #operation="{ record }"> | |||||
<a-dropdown> | |||||
<template #overlay> | |||||
<a-menu @click="handleMenuClick"> | |||||
<a-menu-item key="1"> | |||||
修改 | |||||
</a-menu-item> | |||||
<a-menu-item key="2"> | |||||
发布 | |||||
</a-menu-item> | |||||
<a-menu-item key="3"> | |||||
暂停 | |||||
</a-menu-item> | |||||
<a-menu-item key="3"> | |||||
删除 | |||||
</a-menu-item> | |||||
<a-menu-item key="3"> | |||||
放入回收站 | |||||
</a-menu-item> | |||||
<a-menu-item key="3"> | |||||
查看 | |||||
</a-menu-item> | |||||
</a-menu> | |||||
</template> | |||||
<a-button> | |||||
刷新 | |||||
<DownOutlined /> | |||||
</a-button> | |||||
</a-dropdown> | |||||
</template> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
import { UserOutlined, DownOutlined } from '@ant-design/icons-vue'; | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
} | |||||
, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
} | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '职位名称', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '所属部门', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '状态', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '招聘时间', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '浏览数', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '应聘简历(未看)', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '推荐简历(未看)', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 6}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item required label="联系人" name="contact"> | |||||
<a-input v-model:value="createForm.contact" placeholder="请输入联系人" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="担任职位" name="possession"> | |||||
<a-input v-model:value="createForm.possession" placeholder="请输入联系人职位" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="联系电话" name="phone"> | |||||
<a-input v-model:value="createForm.phone" placeholder="请输入联系电话" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="是否公开联系电话" name="phone_public" :label-col="{span: 0}"> | |||||
<a-radio-group v-model:value="createForm.phone_public" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="手机" name="mobile"> | |||||
<a-input v-model:value="createForm.mobile" placeholder="请输入手机" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="是否公开手机" name="mobile_public" :label-col="{span: 0}"> | |||||
<a-radio-group v-model:value="createForm.mobile_public" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="邮箱" name="email"> | |||||
<a-input v-model:value="createForm.email" placeholder="请输入邮箱" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="是否公开邮箱" name="email_public" :label-col="{span: 0}"> | |||||
<a-radio-group v-model:value="createForm.email_public" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="传真" name="fax"> | |||||
<a-input v-model:value="createForm.fax" placeholder="请输入传真" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="是否公开传真" name="fax_public" :label-col="{span: 0}"> | |||||
<a-radio-group v-model:value="createForm.fax_public" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="其他地址" name="other_address"> | |||||
<a-input v-model:value="createForm.other_address" placeholder="请输入其他地址" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="面试地址" name="interview_address"> | |||||
<a-input v-model:value="createForm.interview_address" placeholder="请输入面试地址" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 6}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item required label="工作经验"> | |||||
<!-- <a-c-select :dict="2021" placeholder="请选择工作经验" @saveSelect="saveExperience"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="学历"> | |||||
<!-- <a-c-select :dict="2006" placeholder="请选择学历" @saveSelect="saveSchoolDegree"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="含最高学历" name="degree_better"> | |||||
<a-radio-group v-model:value="createForm.degree_better" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="职称要求"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="技能认证"> | |||||
<!-- <a-c-select :dict="2015" placeholder="请选择技能认证" @saveSelect="saveCertification"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="语言要求"> | |||||
<!-- <a-c-select :dict="2007" placeholder="请选择语言要求" @saveSelect="saveLanguage"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="掌握程度"> | |||||
<!-- <a-c-select :dict="2008" placeholder="请选择掌握程度" @saveSelect="saveLanguageDegree"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="性别要求" name="sex"> | |||||
<a-radio-group v-model:value="createForm.sex" button-style="solid"> | |||||
<a-radio-button :value="1">男</a-radio-button> | |||||
<a-radio-button :value="2">女</a-radio-button> | |||||
<a-radio-button :value="3">不限</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="最小年龄" name="age_min"> | |||||
<a-input-number :min="0" type="number" v-model:value="createForm.age_min" | |||||
placeholder="请输入最小年龄" style="width: 100%;" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="最大年龄" name="age_max"> | |||||
<a-input-number :min="0" type="number" v-model:value="createForm.age_max" | |||||
placeholder="请输入最大年龄" style="width: 100%;" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="婚姻状况" name="marital_status"> | |||||
<a-radio-group v-model:value="createForm.marital_status" button-style="solid"> | |||||
<a-radio-button :value="1">已婚</a-radio-button> | |||||
<a-radio-button :value="2">未婚</a-radio-button> | |||||
<a-radio-button :value="3">不限</a-radio-button> | |||||
</a-radio-group> | |||||
<!-- <a-c-select :dict="2011" placeholder="请选择婚姻状况" @saveSelect="saveMandarinStatus"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="专业" name="major"> | |||||
<a-input v-model:value="createForm.major" placeholder="请输入专业" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="证书要求" :label-col="{span: 0}"> | |||||
<a-checkbox-group v-model:value="createForm.license" @change="licenseChange"> | |||||
<template v-for="(item, index) in licenseOption"> | |||||
<a-checkbox :value="item.id">{{item.name}}</a-checkbox> | |||||
</template> | |||||
</a-checkbox-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="籍贯要求" name="mandarin"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="compantJiguanSave" placeholder="请选择籍贯" | |||||
:cascader_content="addOtherForm.company_jiguan_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="所在地要求" name="mandarin"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="compantSuozaidiSave" placeholder="请选择所在地" | |||||
:cascader_content="addOtherForm.company_suozaidi_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<a-tabs v-model:activeKey="activeKey"> | |||||
<a-tab-pane key="1" tab="职位信息"> | |||||
<position-info></position-info> | |||||
</a-tab-pane> | |||||
<a-tab-pane key="2" tab="职位要求" force-render> | |||||
<position-demand></position-demand> | |||||
</a-tab-pane> | |||||
<a-tab-pane key="3" tab="联系方式"> | |||||
<position-contact></position-contact> | |||||
</a-tab-pane> | |||||
</a-tabs> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
import PositionInfo from '@/components/invite/position/info.vue' | |||||
import PositionDemand from '@/components/invite/position/demand.vue' | |||||
import PositionContact from '@/components/invite/position/contact.vue' | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '部门名称', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '联系人', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '联系电话', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '联系手机', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '电子邮件', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 6}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item label="是否紧急" name="urgent"> | |||||
<a-radio-group v-model:value="createForm.urgent" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="联系人" name="contact"> | |||||
<a-input v-model:value="createForm.contact" placeholder="请输入联系人" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="所属部门" name="department_id"> | |||||
<!-- <a-c-select-common placeholder="请选择部门" :list="department_list" @searchKey="searchDepartment" | |||||
@saveSearch="saveDepartmentSearch"></a-c-select-common> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="职位名称" name="name"> | |||||
<a-input v-model:value="createForm.name" placeholder="请输入职位名称" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="招聘人数" name="invite_count"> | |||||
<a-input v-model:value="createForm.invite_count" placeholder="请输入招聘人数" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="联系电话" name="phone"> | |||||
<a-input v-model:value="createForm.phone" placeholder="请输入联系电话" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="职位类别" :label-col="{span: 0}"> | |||||
<!-- <a-c-cascader :dict="2004" @saveCascader="industry1Save" placeholder="请选择职位类别" | |||||
:cascader_content="addOtherForm.company_industry1_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="工作地区" name="name"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="location1Save" placeholder="请选择工作区域" | |||||
:cascader_content="addOtherForm.company_location1_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="职位描述" name="describe_text" > | |||||
<!-- <QuillEditor theme="snow" :options="options" toolbar="full" | |||||
v-model:content="addOtherForm.describe_content" | |||||
@update:content="onEditorDescribeUpdate($event)" contentType="html" /> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="薪资范围" name="pay_range"> | |||||
<!-- <a-c-select :dict="2005" placeholder="请选择月薪要求范围" @saveSelect="savePayRange"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="有效天数" name="useful_life"> | |||||
<a-input-number :min="0" type="number" v-model:value="createForm.useful_life" | |||||
placeholder="请输入有效天数" style="width: 100%;" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="到期日期"> | |||||
<!-- <a-date-picker v-model:value="addOtherForm.daoqi_date" @Change="disabledDateChange" | |||||
style="width: 100%;" /> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="关键词"> | |||||
<a-input v-model:value="createForm.key_word" placeholder="请输入关键词" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="职位性质"> | |||||
<!-- <a-date-picker v-model:value="addOtherForm.daoqi_date" @Change="disabledDateChange" | |||||
style="width: 100%;" /> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="食宿要求"> | |||||
<!-- <a-c-select :dict="2016" placeholder="请选择食宿要求" @saveSelect="saveShisu"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="节假日休息情况" > | |||||
<!-- <a-c-select :dict="2017" placeholder="请选择节假日休息情况" @saveSelect="saveHolidays"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<a-table :data-source="dataSource" :columns="columns"> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
import { UserOutlined, DownOutlined } from '@ant-design/icons-vue'; | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
} | |||||
, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
}, { | |||||
key: '第一部部门第一部部门第一部部门', | |||||
name: '第一部', | |||||
age: '已暂停', | |||||
address: '2020111111', | |||||
phone: '12', | |||||
email: '12.com', | |||||
} | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '职位名称', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '所属部门', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '状态', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '招聘时间', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '浏览数', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '应聘简历(未看)', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '推荐简历(未看)', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
} | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-table :data-source="dataSource" :columns="columns"> | |||||
<template #operation="{ record }"> | |||||
<a-popconfirm v-if="dataSource.length" title="Sure to delete?" @confirm="onDelete(record.key)"> | |||||
<a>删除</a> | |||||
</a-popconfirm> | |||||
</template> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '时间', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '招聘会主题', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '地点', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 4}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item required label="姓名" name="name"> | |||||
<a-input v-model:value="createForm.name" placeholder="请输入姓名" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="电话" name="contact"> | |||||
<a-input v-model:value="createForm.contact" placeholder="请输入联系人" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="地址" name="phone"> | |||||
<a-input v-model:value="createForm.phone" placeholder="请输入联系电话" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="传真" name="mobile"> | |||||
<a-input v-model:value="createForm.mobile" placeholder="请输入手机" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="邮编" name="email"> | |||||
<a-input v-model:value="createForm.email" placeholder="请输入邮箱" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="电子邮箱" name="email"> | |||||
<a-input v-model:value="createForm.email" placeholder="请输入邮箱" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="反馈内容" name="email"> | |||||
<a-input v-model:value="createForm.email" placeholder="请输入邮箱" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '部门名称', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '联系人', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '联系电话', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '联系手机', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '电子邮件', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-table :data-source="dataSource" :columns="columns"> | |||||
<template #operation="{ record }"> | |||||
<a-popconfirm v-if="dataSource.length" title="Sure to delete?" @confirm="onDelete(record.key)"> | |||||
<a>删除</a> | |||||
</a-popconfirm> | |||||
</template> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '姓名', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '电话', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '留言内容', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '留言时间', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-row> | |||||
<a-col> | |||||
搜索应聘简历 | |||||
</a-col> | |||||
<a-col span="2"> | |||||
<a-dropdown> | |||||
<template #overlay> | |||||
</template> | |||||
<a-button> | |||||
部门 | |||||
<DownOutlined /> | |||||
</a-button> | |||||
</a-dropdown> | |||||
</a-col> | |||||
<a-col> | |||||
<a-dropdown> | |||||
<template #overlay> | |||||
</template> | |||||
<a-button> | |||||
职位 | |||||
<DownOutlined /> | |||||
</a-button> | |||||
</a-dropdown> | |||||
</a-col> | |||||
<a-col> | |||||
<a-dropdown> | |||||
<template #overlay> | |||||
</template> | |||||
<a-button> | |||||
状态 | |||||
<DownOutlined /> | |||||
</a-button> | |||||
</a-dropdown> | |||||
</a-col> | |||||
<a-col> | |||||
<a-input-search v-model:value="value" placeholder="input search text" style="width: 200px;" | |||||
@search="onSearch"> | |||||
<template #enterButton> | |||||
<a-button>Custom</a-button> | |||||
</template> | |||||
</a-input-search> | |||||
</a-col> | |||||
</a-row> | |||||
<div style="margin: 10px 0;"> | |||||
<a-row> | |||||
<a-col> | |||||
<a-button>放入回收站</a-button> | |||||
</a-col> | |||||
<a-col span="2"> | |||||
<a-button>发布面试通知</a-button> | |||||
</a-col> | |||||
</a-row> | |||||
</div> | |||||
<a-table :data-source="dataSource" :columns="columns" | |||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"> | |||||
<template #operation="{ record }"> | |||||
<a-popconfirm v-if="dataSource.length" title="Sure to delete?" @confirm="onDelete(record.key)"> | |||||
<a>删除</a> | |||||
</a-popconfirm> | |||||
</template> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, computed, onMounted } from 'vue'; | |||||
import { DownOutlined } from '@ant-design/icons-vue'; | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '姓名', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '性别', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '应聘职位', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '学历', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '所在地', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '工作经验', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '应聘时间', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '状态', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-input-search v-model:value="value" placeholder="input search text" | |||||
@search="onSearch"> | |||||
<template #enterButton> | |||||
<a-button>搜索</a-button> | |||||
</template> | |||||
</a-input-search> | |||||
<a-table :data-source="dataSource" :columns="columns" | |||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"> | |||||
<template #operation="{ record }"> | |||||
<a-popconfirm v-if="dataSource.length" title="Sure to delete?" @confirm="onDelete(record.key)"> | |||||
<a>删除</a> | |||||
</a-popconfirm> | |||||
</template> | |||||
</a-table> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, computed, onMounted } from 'vue'; | |||||
import { DownOutlined } from '@ant-design/icons-vue'; | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '姓名', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '性别', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '意向职位', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '学历', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '期望工作地', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 4}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item label="关键字" name="full_name"> | |||||
<a-input v-model:value="value" placeholder="Basic usage" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="关键词匹配" name="registration_number"> | |||||
<a-checkbox-group> | |||||
<a-checkbox>求职意向</a-checkbox> | |||||
<a-checkbox>工作经历</a-checkbox> | |||||
<a-checkbox>教育经历</a-checkbox> | |||||
<a-checkbox>技能专长</a-checkbox> | |||||
</a-checkbox-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="应聘职位" name="mandarin"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="compantJiguanSave" placeholder="请选择籍贯" | |||||
:cascader_content="addOtherForm.company_jiguan_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="期望地区" name="mandarin"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="compantJiguanSave" placeholder="请选择籍贯" | |||||
:cascader_content="addOtherForm.company_jiguan_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="户口所在地" name="mandarin"> | |||||
<!-- <a-c-cascader :dict="2009" @saveCascader="compantSuozaidiSave" placeholder="请选择所在地" | |||||
:cascader_content="addOtherForm.company_suozaidi_cascader"></a-c-cascader> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="学历"> | |||||
<!-- <a-c-select :dict="2006" placeholder="请选择学历" @saveSelect="saveSchoolDegree"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="含最高学历" name="degree_better"> | |||||
<a-radio-group v-model:value="createForm.degree_better" button-style="solid"> | |||||
<a-radio-button :value="1">是</a-radio-button> | |||||
<a-radio-button :value="2">否</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="英语"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="国语"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="粤语"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="第二外语"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="计算机能力"> | |||||
<!-- <a-c-select :dict="2014" placeholder="请选择职称要求" @saveSelect="saveProfelevel"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="工作经验"> | |||||
<!-- <a-c-select :dict="2021" placeholder="请选择工作经验" @saveSelect="saveExperience"></a-c-select> --> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="性别" name="sex"> | |||||
<a-radio-group v-model:value="createForm.sex" button-style="solid"> | |||||
<a-radio-button :value="1">男</a-radio-button> | |||||
<a-radio-button :value="2">女</a-radio-button> | |||||
<a-radio-button :value="3">不限</a-radio-button> | |||||
</a-radio-group> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="最小年龄" name="age_min"> | |||||
<a-input-number :min="0" type="number" v-model:value="createForm.age_min" | |||||
placeholder="请输入最小年龄" style="width: 100%;" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item label="最大年龄" name="age_max"> | |||||
<a-input-number :min="0" type="number" v-model:value="createForm.age_max" | |||||
placeholder="请输入最大年龄" style="width: 100%;" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="简历更新" name="marital_status"> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="简历编号" name="major"> | |||||
<a-input v-model:value="createForm.major" placeholder="请输入专业" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
<a-button block>保存</a-button> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed, defineProps, watch, defineEmits } from 'vue'; | |||||
// import dayjs from 'dayjs'; | |||||
// import 'dayjs/locale/zh-cn'; | |||||
// dayjs.locale('zh-cn'); | |||||
// const dayjsRef = ref(dayjs); | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
full_name: '', | |||||
registration_number: '', | |||||
establishment_date: '', | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
fax: '', | |||||
website: '', | |||||
province: 0, | |||||
city: 0, | |||||
district: 0, | |||||
street: 0, | |||||
address: '', | |||||
industry: 0, | |||||
nature: 0, | |||||
scale: 0, | |||||
introduction: '', | |||||
photo: '', | |||||
photo_status: 1, | |||||
license_path: '', | |||||
license_status: 1, | |||||
login_name: '', | |||||
login_pwd: '', | |||||
company_photos: [], | |||||
}) | |||||
let addOtherForm = ref<companyListType.addOtherFormType>({ | |||||
chengli_date: '', | |||||
content: '', | |||||
photo_img: '', | |||||
license_img: '', | |||||
company_photo_img: '', | |||||
company_address_cascader: '', | |||||
company_industry_cascader: '', | |||||
company_nature_cascader: '', | |||||
company_scale_cascader: '', | |||||
}) | |||||
onMounted(async () => { | |||||
// let res = await listSection({ page: 1, pagesize: 10, sort: 'id', sortby: "asc", keyword: "" }); | |||||
// section_list.value = res.data.sections; | |||||
}) | |||||
// 上传图片 | |||||
// 企业照片 | |||||
// const uploadPhotoSuccess = (data : Object) => { | |||||
// addOtherForm.value.photo_img = "http://114.132.245.7:242494" + data | |||||
// createForm.value.photo = data | |||||
// } | |||||
// // 营业执照 | |||||
// const uploadLicenseSuccess = (data : Object) => { | |||||
// addOtherForm.value.license_img = "http://114.132.245.7:242494" + data | |||||
// createForm.value.license_path = data | |||||
// } | |||||
// // 企业相册 | |||||
// const uploadSuccess = (data : Object) => { | |||||
// addOtherForm.value.company_photo_img = "http://114.132.245.7:242494" + data | |||||
// createForm.value.company_photos.push({ photo: data }) | |||||
// } | |||||
// // 成立日期 | |||||
// const establishmentDateChange = (val) => { | |||||
// createForm.value.establishment_date = dayjsRef.value(val).format('YYYY-MM-DD'); | |||||
// } | |||||
// // 选择地址 | |||||
// const compantAddressSave = (data) => { | |||||
// createForm.value.province = data.arr1[0] ? data.arr1[0] : 0; | |||||
// createForm.value.city = data.arr1[1] ? data.arr1[1] : 0; | |||||
// createForm.value.district = data.arr1[2] ? data.arr1[2] : 0; | |||||
// createForm.value.street = data.arr1[3] ? data.arr1[3] : 0; | |||||
// } | |||||
// // 所属行业 industrySave | |||||
// const industrySave = (data) => { | |||||
// createForm.value.industry = data.arr1[1] ? data.arr1[1] : 0; | |||||
// } | |||||
// // 企业性质 | |||||
// const natureSave = (data) => { | |||||
// createForm.value.nature = data.arr1[1] ? data.arr1[1] : 0; | |||||
// } | |||||
// // 企业规模 | |||||
// const scaleSave = (data) => { | |||||
// createForm.value.scale = data.val ? data.val : 0; | |||||
// } | |||||
// // 富文本 | |||||
// const onEditorUpdate = (data) => { | |||||
// createForm.value.introduction = data | |||||
// } | |||||
// const sumbitForm = () => { | |||||
// console.log(createForm.value) | |||||
// if (createForm.value.full_name) { | |||||
// if (!createForm.value.id) { | |||||
// addCompany(createForm.value).then(res => { | |||||
// message.success('新增企业成功'); | |||||
// hideModal(); | |||||
// resetForm(); | |||||
// emit('successAdd'); | |||||
// }).catch(err => { | |||||
// }) | |||||
// } else { | |||||
// PostCompanyEdit(createForm.value).then(res => { | |||||
// message.success('修改企业信息成功'); | |||||
// hideModal(); | |||||
// resetForm(); | |||||
// emit('successAdd'); | |||||
// }).catch(err => { | |||||
// }) | |||||
// } | |||||
// } else { | |||||
// message.warning('请补充完整信息'); | |||||
// } | |||||
// } | |||||
</script> | |||||
<style> | |||||
</style> | |||||
<style> | |||||
</style> |
<template> | |||||
<a-row> | |||||
<a-col :span="6"> | |||||
<a-statistic title="总点数" value="10000" style="margin-right: 50px" /> | |||||
</a-col> | |||||
<a-col :span="6"> | |||||
<a-statistic title="剩余点数" value="999" /> | |||||
</a-col> | |||||
<a-col :span="6"> | |||||
<a-statistic title="开通日期" value="2012-12-20" /> | |||||
</a-col> | |||||
<a-col :span="6"> | |||||
<a-statistic title="有效期限" value="2012-12-20" /> | |||||
</a-col> | |||||
</a-row> | |||||
</template> | |||||
<script> | |||||
</script> | |||||
<style> | |||||
</style> |
<template> | |||||
<a-form :model="createForm" :label-col="{span: 4}" labelAlign="right"> | |||||
<a-row gutter="20"> | |||||
<a-col span="12"> | |||||
<a-row> | |||||
<a-col span="24"> | |||||
<a-form-item required label="登录密码" name="name"> | |||||
<a-input v-model:value="createForm.name" placeholder="请输入登录密码" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="注册的手机号" name="name"> | |||||
<a-input v-model:value="createForm.name" placeholder="请输入手机号" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
<a-col span="24"> | |||||
<a-form-item required label="确认密码" name="contact"> | |||||
<a-input v-model:value="createForm.contact" placeholder="请输入确认密码" /> | |||||
</a-form-item> | |||||
</a-col> | |||||
</a-row> | |||||
</a-col> | |||||
</a-row> | |||||
</a-form> | |||||
</template> | |||||
<script setup lang="ts"> | |||||
import { ref, onMounted, computed } from 'vue'; | |||||
let createForm : companyListType.addrFormType = ref({ | |||||
name: '', | |||||
company_id: 0, | |||||
contact: '', | |||||
phone: '', | |||||
mobile: '', | |||||
email: '', | |||||
}) | |||||
let dataSource = ref([ | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
{ | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, { | |||||
key: '1', | |||||
name: '第一部部门第一部部门第一部部门', | |||||
age: '王二狗', | |||||
address: '082-12331231', | |||||
phone: '1223245645646', | |||||
email: '6146545@126.com', | |||||
}, | |||||
]) | |||||
let columns = ref([ | |||||
{ | |||||
title: '部门名称', | |||||
dataIndex: 'name', | |||||
key: 'name', | |||||
}, | |||||
{ | |||||
title: '联系人', | |||||
dataIndex: 'age', | |||||
key: 'age', | |||||
}, | |||||
{ | |||||
title: '联系电话', | |||||
dataIndex: 'address', | |||||
key: 'address', | |||||
}, | |||||
{ | |||||
title: '联系手机', | |||||
dataIndex: 'phone', | |||||
key: 'phone', | |||||
}, | |||||
{ | |||||
title: '电子邮件', | |||||
dataIndex: 'email', | |||||
key: 'email', | |||||
}, | |||||
{ | |||||
title: '操作', | |||||
dataIndex: 'operation', | |||||
slots: { customRender: 'operation' }, | |||||
}, | |||||
]) | |||||
</script> | |||||
<style scoped lang="less"> | |||||
:deep(.ant-table-thead >tr>th) { | |||||
background-color: #fff !important; | |||||
border: none !important; | |||||
color: #bbb !important; | |||||
} | |||||
:deep(.ant-table-thead >tr>th::before) { | |||||
display: none !important; | |||||
} | |||||
:deep(.ant-table-tbody >tr >td) { | |||||
border: none !important; | |||||
} | |||||
</style> |
import { store } from './store'; | import { store } from './store'; | ||||
import Antd from 'ant-design-vue'; | import Antd from 'ant-design-vue'; | ||||
import 'ant-design-vue/dist/reset.css'; | import 'ant-design-vue/dist/reset.css'; | ||||
import CommonLeftSider from '@/components/common/left-sider.vue'; | |||||
// router.beforeEach((to, from, next) => { | // router.beforeEach((to, from, next) => { | ||||
// document.title = `${to.meta.title} - 菊城人才市场后台管理`; | // document.title = `${to.meta.title} - 菊城人才市场后台管理`; | ||||
// if (!sessionStorage.getItem('token')) { | // if (!sessionStorage.getItem('token')) { | ||||
// }) | // }) | ||||
const app = createApp(App); | const app = createApp(App); | ||||
app.component('common-left-sider', CommonLeftSider); | |||||
app.use(router); | app.use(router); | ||||
app.use(store); | app.use(store); | ||||
app.use(Antd); | app.use(Antd); |
path: '', | path: '', | ||||
name: 'layout', | name: 'layout', | ||||
component: Layout, | component: Layout, | ||||
redirect: '/manage/home', | |||||
// children: [ | |||||
// ...routesModuleList | |||||
// ] | |||||
redirect: '/job/home', | |||||
children: [ | children: [ | ||||
...routesManageModuleList | |||||
...routesModuleList | |||||
] | ] | ||||
// children: [ | |||||
// ...routesManageModuleList | |||||
// ] | |||||
} | } | ||||
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">基本资料</a-menu-item> | |||||
<a-menu-item key="2">部门管理</a-menu-item> | |||||
<a-menu-item key="3">上传营业执照</a-menu-item> | |||||
<a-menu-item key="4">上传企业图片</a-menu-item> | |||||
<a-menu-item key="5">资料预览</a-menu-item> | |||||
<a-menu-item key="6">联系方式</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" @changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | |||||
<company-department></company-department> | |||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | |||||
<company-basic v-if="curKey == 1"></company-basic> | |||||
<company-department v-if="curKey == 2"></company-department> | |||||
<company-licence v-if="curKey == 3"></company-licence> | |||||
<company-image v-if="curKey == 4"></company-image> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | import CompanyBasic from '@/components/company/basic/index.vue' | ||||
import CompanyDepartment from '@/components/company/department/index.vue' | import CompanyDepartment from '@/components/company/department/index.vue' | ||||
import CompanyLicence from '@/components/company/licence/index.vue' | |||||
import CompanyImage from '@/components/company/image/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{name: '基本资料',key: 1},{name: '部门管理',key: 2},{name: '上传营业执照',key: 3},{name: '上传企业图片',key: 4},{name: '资料预览',key:5},{name: '联系方式',key: 6}]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">发布招聘</a-menu-item> | |||||
<a-menu-item key="2">招聘职位管理</a-menu-item> | |||||
<a-menu-item key="3">招聘回收站</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | |||||
<company-department></company-department> | |||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | |||||
<invite-position v-if="curKey == 1"></invite-position> | |||||
<invite-manage v-if="curKey == 2"></invite-manage> | |||||
<invite-recycle v-if="curKey == 3"></invite-recycle> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import InvitePosition from '@/components/invite/position/index.vue' | |||||
import InviteManage from '@/components/invite/manage/index.vue' | |||||
import InviteRecycle from '@/components/invite/recycle/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '发布招聘', key: 1 }, { name: '招聘职位管理', key: 2 }, { name: '招聘回收站', key: 3 }]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">招聘会预定</a-menu-item> | |||||
<a-menu-item key="2">预定审核结果</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | <div style="width: 100%;background-color: #fff;padding: 10px;"> | ||||
<company-department></company-department> | |||||
<meet-subscribe v-if="curKey == 1"></meet-subscribe> | |||||
<meet-subscribe v-if="curKey == 2"></meet-subscribe> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import MeetSubscribe from '@/components/meet/subscribe/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '招聘会预定', key: 1 },{ name: '预定审核结果', key: 2}]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">意见反馈列表</a-menu-item> | |||||
<a-menu-item key="2">意见反馈</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | <div style="width: 100%;background-color: #fff;padding: 10px;"> | ||||
<company-department></company-department> | |||||
<message-list v-if="curKey == 1"></message-list> | |||||
<message-feedback v-if="curKey == 2"></message-feedback> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import MessageList from '@/components/message/list/index.vue' | |||||
import MessageFeedback from '@/components/message/feedback/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '意见反馈列表', key: 1 },{ name: '意见反馈', key: 2}]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">收到的应聘简历</a-menu-item> | |||||
<a-menu-item key="2">邀请面试简历</a-menu-item> | |||||
<a-menu-item key="3">已查看联系方式</a-menu-item> | |||||
<a-menu-item key="4">企业人才库</a-menu-item> | |||||
<a-menu-item key="5">简历回收站</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | <div style="width: 100%;background-color: #fff;padding: 10px;"> | ||||
<company-department></company-department> | |||||
<resume-interview v-if="curKey == 2"></resume-interview> | |||||
<resume-read v-if="curKey == 3"></resume-read> | |||||
<resume-read v-if="curKey == 4"></resume-read> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import ResumeInterview from '@/components/resume/interview/index.vue' | |||||
import ResumeRead from '@/components/resume/read/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '收到的应聘简历', key: 1 }, { name: '邀请面试简历', key: 2 }, { name: '已查看联系方式', key: 3 }, { name: '企业人才库', key: 4 }, { name: '简历回收站', key: 5 }]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">简历搜索</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | <div style="width: 100%;background-color: #fff;padding: 10px;"> | ||||
<company-department></company-department> | |||||
<resume-search v-if="curKey == 1"></resume-search> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import ResumeSearch from '@/components/resume/search/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '简历搜索', key: 1 }]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
<a-row :gutter="[10,10]" type="flex" justify="center"> | <a-row :gutter="[10,10]" type="flex" justify="center"> | ||||
<a-col span="18"> | <a-col span="18"> | ||||
<a-row> | <a-row> | ||||
<a-col span="4"> | |||||
<a-menu v-model:openKeys="openKeys" v-model:selectedKeys="selectedKeys" style="width: 100%;" mode="inline"> | |||||
<a-menu-item key="1">费用管理</a-menu-item> | |||||
<a-menu-item key="2">修改登录密码</a-menu-item> | |||||
</a-menu> | |||||
<a-col span="4"> | |||||
<common-left-sider :menu_list="menu_list" :selected_key="[1]" | |||||
@changeKey="changeKey"></common-left-sider> | |||||
</a-col> | </a-col> | ||||
<a-col span="20"> | <a-col span="20"> | ||||
<div style="width: 100%;background-color: #fff;padding: 10px;"> | <div style="width: 100%;background-color: #fff;padding: 10px;"> | ||||
<company-department></company-department> | |||||
<user-expense v-if="curKey == 1"></user-expense> | |||||
<user-password v-if="curKey == 2"></user-password> | |||||
</div> | </div> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
</a-col> | </a-col> | ||||
</a-row> | </a-row> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import { ref, computed, onMounted } from 'vue'; | import { ref, computed, onMounted } from 'vue'; | ||||
import CompanyBasic from '@/components/company/basic/index.vue' | |||||
import CompanyDepartment from '@/components/company/department/index.vue' | |||||
import UserExpense from '@/components/user/expense/index.vue' | |||||
import UserPassword from '@/components/user/password/index.vue' | |||||
let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | let companyList = ref<object[]>([{}, {}, {}, {}, {}, {}]) | ||||
const openKeys = ref<string[]>(['1']); | |||||
const selectedKeys = ref<string[]>(['2']); | |||||
let menu_list = ref([{ name: '费用管理', key: 1 },{ name: '修改登录密码', key: 2}]) | |||||
let curKey = ref<Number>(1) | |||||
const changeKey = (data) => { | |||||
curKey.value = data.key; | |||||
} | |||||
</script> | </script> | ||||
<style> | <style> |
{ | { | ||||
"compilerOptions": { | |||||
"target": "ES2020", | |||||
"useDefineForClassFields": true, | |||||
"module": "ESNext", | |||||
"lib": ["ES2020", "DOM", "DOM.Iterable"], | |||||
"skipLibCheck": true, | |||||
"baseUrl": "./", | |||||
"paths": {"@/*": ["src/*"]}, | |||||
/* Bundler mode */ | |||||
"moduleResolution": "bundler", | |||||
"allowImportingTsExtensions": true, | |||||
"resolveJsonModule": true, | |||||
"isolatedModules": true, | |||||
"noEmit": true, | |||||
"jsx": "preserve", | |||||
"compilerOptions": { | |||||
"target": "ES2020", | |||||
"useDefineForClassFields": true, | |||||
"module": "ESNext", | |||||
"lib": ["ES2020", "DOM", "DOM.Iterable"], | |||||
"skipLibCheck": true, | |||||
"baseUrl": "./", | |||||
"paths": { | |||||
"@/*": ["src/*"] | |||||
}, | |||||
/* Bundler mode */ | |||||
"moduleResolution": "bundler", | |||||
"allowImportingTsExtensions": true, | |||||
"resolveJsonModule": true, | |||||
"isolatedModules": true, | |||||
"noEmit": true, | |||||
"jsx": "preserve", | |||||
/* Linting */ | |||||
"strict": true, | |||||
"noUnusedLocals": true, | |||||
"noUnusedParameters": true, | |||||
"noFallthroughCasesInSwitch": true | |||||
}, | |||||
"include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "src/**/*.d.ts"], | |||||
"references": [{ "path": "./tsconfig.node.json" }] | |||||
} | |||||
/* Linting */ | |||||
"strict": true, | |||||
"noUnusedLocals": true, | |||||
"noUnusedParameters": true, | |||||
"noFallthroughCasesInSwitch": true | |||||
}, | |||||
"include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "src/**/*.d.ts"], | |||||
"references": [{ | |||||
"path": "./tsconfig.node.json" | |||||
}] | |||||
} |
// https://vitejs.dev/config/ | // https://vitejs.dev/config/ | ||||
export default defineConfig({ | export default defineConfig({ | ||||
plugins: [vue()], | |||||
resolve: { | |||||
alias: { | |||||
'@': path.resolve(__dirname, 'src') | |||||
} | |||||
} | |||||
}) | |||||
plugins: [vue()], | |||||
build: { | |||||
outDir: 'dist/web' | |||||
}, | |||||
resolve: { | |||||
alias: { | |||||
'@': path.resolve(__dirname, 'src') | |||||
} | |||||
} | |||||
}) |