diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..7429260 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,67 @@ +kind: pipeline +name: fe-str + +steps: + - name: restore-cache + image: drillster/drone-volume-cache + settings: + restore: true + mount: + - ./.npm-cache + - ./node_modules + volumes: + - name: cache + path: /cache + + - name: npm-install + image: node:16.13.1-alpine + commands: + - npm config set cache ./.npm-cache --global + - npm config set registry http://registry.npm.taobao.org/ + - npm install && npm run build + + - name: rebuild-cache + image: drillster/drone-volume-cache + settings: + rebuild: true + mount: + - ./.npm-cache + - ./node_modules + volumes: + - name: cache + path: /cache + + - name: build-fe-stu + image: plugins/docker + privileged: true + volumes: + - name: registry-auth + path: /root/.docker + - name: dockersock + path: /var/run/docker.sock + settings: + registry: swr.cn-south-1.myhuaweicloud.com + repo: swr.cn-south-1.myhuaweicloud.com/yp/fe-stu + tags: latest + + - name: release + image: docker:dind + volumes: + - name: dockersock + path: /var/run/docker.sock + - name: registry-auth + path: /root/.docker + commands: + - docker stack deploy -c docker-compose.yml fe-stu --with-registry-auth + + +volumes: + - name: cache + host: + path: /tmp/cache + - name: dockersock + host: + path: /var/run/docker.sock + - name: registry-auth + host: + path: /root/.docker diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..2618416 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,6 @@ +FROM devforth/spa-to-http:latest +WORKDIR / + +ADD ./dist . + +EXPOSE 8080 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..31892f4 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +version: "3" + +services: + buyer-ui-mro84: + image: swr.cn-south-1.myhuaweicloud.com/yp/fe-stu + networks: + - traefik + deploy: + mode: replicated + replicas: 1 +networks: + traefik: + external: true \ No newline at end of file diff --git a/package.json b/package.json index 166c8a3..c29cd5f 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "private": true, "scripts": { "dev": "vite", - "serve": "vite build && vite preview", + "server": "vite build && vite preview", "build": "vite build" }, "dependencies": { diff --git a/src/api/api.js b/src/api/api.js index 4e88be2..0229e8f 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -15,8 +15,12 @@ export const TASK_VOTE_COMMIT = '/stu/task/vote/commit' export const TASK_VOTE_DETAIL = '/stu/task/vote/detail' export const TASK_WORK_COMMIT = '/stu/task/work/commit' export const TASK_WORK_DETAIL = '/stu/task/work/detail' +export const VOTE_DETAIL = '/queryVoteSubmitDetailById' +export const TASK_VOTE_LIST = '/queryVoteSubmitDetailListByTaskId' + export const STU_OFFCOURSE_DETAIL = '/stu/offcourse/detail' export const WORK_QUERYWORKDETAILBYID = '/work/queryWorkDetailById' +export const WORK_HISTROY = '/workSubmit/queryWorkDetailListByStuId' export const EXAMINATION_QUERYEXAMINATIONDETAILBYID = '/examination/queryExaminationDetailById' export const DISCUSS_COLLECTION = '/discussSubmit/clickDiscussCollectionCountOr POST' export const DISCUSS_LIKE = '/discussSubmit/clickDiscussLikeCountOr POST' diff --git a/src/api/utils.js b/src/api/utils.js new file mode 100644 index 0000000..b749636 --- /dev/null +++ b/src/api/utils.js @@ -0,0 +1,3 @@ +export function useImage(src){ + return new URL(`../assets/image/${src}`, import.meta.url).href +} \ No newline at end of file diff --git a/src/assets/image/222_02.png b/src/assets/image/222_02.png new file mode 100644 index 0000000..a680bd6 Binary files /dev/null and b/src/assets/image/222_02.png differ diff --git a/src/assets/image/222_03.png b/src/assets/image/222_03.png new file mode 100644 index 0000000..d6df5e9 Binary files /dev/null and b/src/assets/image/222_03.png differ diff --git a/src/assets/image/222_04.png b/src/assets/image/222_04.png new file mode 100644 index 0000000..a6a4575 Binary files /dev/null and b/src/assets/image/222_04.png differ diff --git a/src/assets/image/222_05.png b/src/assets/image/222_05.png new file mode 100644 index 0000000..9e98d62 Binary files /dev/null and b/src/assets/image/222_05.png differ diff --git a/src/assets/image/222_06.png b/src/assets/image/222_06.png new file mode 100644 index 0000000..d70c9b5 Binary files /dev/null and b/src/assets/image/222_06.png differ diff --git a/src/assets/scss/iconfont.css b/src/assets/scss/iconfont.css new file mode 100644 index 0000000..5bdddf5 --- /dev/null +++ b/src/assets/scss/iconfont.css @@ -0,0 +1,27 @@ +@font-face { + font-family: "iconfont"; /* Project id 3783986 */ + src: + url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAQEAAsAAAAACDgAAAO1AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACDFAqDbIMuATYCJAMQCwoABCAFhGcHRhssB8gekqQHgzo4hwXVG4AgIgjXyNkkTwiWChIVgapCIVv5quwqfDWS8GjJiJuQa08G0RPNCfTUtbWWeaCyQpW6qifVOVlg9aSPsvtH2Zv9XNFVGGAny0Zdyt88ImsPAGmtU/NM6MDeAvyAKaVbx4BnIkxRgJ3BWuR/jUCjdQpARzXOR7B03VkYNkEYwiCujeve2oMm71BqakO9UItOLeK+GtJB2sQ9//vx32YgSGoyY5VT1w5C+LwbePjPSVUS+QdXIJDdE2qQsbwwV1ytD5xXCQvLwBrL2letAqhVhDRorKrw6T+Fqqs1//JIQiZqGdXNYJuyZUeltHkSf5Z4gj/LRlfJFGe9qyk9xWeaGx6SJDFC0VvZvs0w3zUlSWY7Q9MtOMwKm8spLdsp9krJZ/aJYfbFja1l5G27Gfu8JSXlxalRZK2r6evRKIt0VPNsczcQWD6ZsoRyhneGsYKxZgadMTPGXMVUyQQsfIKWRr+n2xmVCpF9jAag0t8AwXff5t/4GpDuvHJuXJ4fsiyhsGivn+G0zKC0rNhYGzAvQps3TdVymRWSm5fNLs5aFJMxVXjDXBwnSUlXxuXBknrSSJrc4ymUk53S1WsX8tBN0doi9r5S+rlY9pI6ME/JgTaNodbmQeiIXb/ZTXl3RwXQvUoEtTg2+/H9oI0uqwpwvC3B76M4h+5sICt8SU+Zrv+9ICG5Awy8QaVsD2ST+3J32ZqcvWhqtDDjp2jHbMt865YdeQyc6O7ZhvoLLK+alaSFGdxfrbTBZ/UmJ0tKJl0rBzwVvbpnEFZ6uhmFwH8G3X7W7mMygByg2s0dmRcAqN7zaOZQS0e5K3N+224+ESAxjstyv/Xoc2v5Xfv9zY9XuwXQrUK9BKz4ksaLILGoSUop09iqf4fpUOdcQqPp5OPVQ6ezIUxdcI5Qn1JySOoMIas3SRVuETWabKJWvR00WqI+u0mXIBVRGjArlUBo14ak1XNk7Vaowu2jRq971Gr3j0anA7tck9lwVbXkCYXoEo3eroaVZRZf7IB0kXq2KDshO4vINAq3u9nyETHZPkaERuh+WJhCjxCToQa7G6WpwaAQE1Mgba8wyR3Bjiq7Sds1MIM9FvEIEkIuriFvAYMplyzp3xsgWiHlsSA18VkzWk6JR8IECAHUkYGhhgtZJdQFrS+MUJAHS5QySIP3kVQpGCiovFOMBESbV4dcziFokjxQQ3t6U3b35FwTxtIlUuQoUaPutjfrtOCGm7fHN1a7ZqiXKQKPNQAAAAA=') format('woff2'), + url('//at.alicdn.com/t/c/font_3783986_mjwv9ktyno9.woff?t=1669022536484') format('woff'), + url('//at.alicdn.com/t/c/font_3783986_mjwv9ktyno9.ttf?t=1669022536484') format('truetype'); +} + +.iconfont { + font-family: "iconfont" !important; + font-size: 16px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-pinglun:before { + content: "\e8c5"; +} + +.icon-dianzan:before { + content: "\e619"; +} + +.icon-shoucang:before { + content: "\e8c6"; +} diff --git a/src/main.js b/src/main.js index 7dd1d9b..40a8be5 100644 --- a/src/main.js +++ b/src/main.js @@ -7,6 +7,7 @@ import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' import zhCn from 'element-plus/es/locale/lang/zh-cn' import "@/assets/scss/common.scss" +import "@/assets/scss/iconfont.css" const app = createApp(App) app.use(store).use(router).mount('#app') diff --git a/src/mock/mocks/ballot.js b/src/mock/mocks/ballot.js index 7935b67..d0d6785 100644 --- a/src/mock/mocks/ballot.js +++ b/src/mock/mocks/ballot.js @@ -7,7 +7,19 @@ export default { "rows": [ { "chapterId": 0, - "name": "" + "name": "初级" + }, + { + "chapterId": 0, + "name": "中级" + }, + { + "chapterId": 0, + "name": "高级" + }, + { + "chapterId": 0, + "name": "专家" } ] }, diff --git a/src/mock/mocks/discuss.js b/src/mock/mocks/discuss.js index 039b93b..1b464eb 100644 --- a/src/mock/mocks/discuss.js +++ b/src/mock/mocks/discuss.js @@ -11,8 +11,8 @@ export default { "createUser": 0, "discussCollectionCount": 12, "discussId": "", - "discussLikeCount": "123", - "discussReviewCount": "12", + "discussLikeCount": 123, + "discussReviewCount": 11, "discussSubmitContent": "所谓团队协作能力,是指建立在团队的基础之上,发挥团队精神、互补互助以达到团队最大工作效率的能力。对于团队的成员来说,\n" + " 不仅要有个人能力,更需要有在不同的位置上各尽所能、与其他成员协调合作的能力。", "discussSubmitId": "", @@ -24,7 +24,7 @@ export default { { "createTime": "", "createUser": 0, - "discussLikeCount": "12", + "discussLikeCount": 12, "discussReviewContent": "", "discussReviewFlag": "", "discussReviewId": "", @@ -89,7 +89,7 @@ export default { "discussCollectionCount": 222, "discussId": "", "discussLikeCount": 123, - "discussReviewCount": "", + "discussReviewCount": 12, "discussSubmitContent": "所谓团队协作能力,是指建立在团队的基础之上,发挥团队精神、互补互助以达到团队最大工作效率的能力。对于团队的成员来说, 不仅要有个人能力,更需要有在不同的位置上各尽所能、与其他成员协调合作的能力", "discussSubmitId": "", "discussSubmitPictureAddress": "", @@ -100,9 +100,10 @@ export default { { "createTime": "2022-06-21 21:35:12", "createUser": 0, - "discussLikeCount": "12", + "discussLikeCount": 12, "discussReviewContent": "教师基本功扎实,知识讲解准确,教学设计合理,始终以学生为主体,自主学习,小组交流讨论,上台交流展示等形式,师生配合默契,取得了较好的学习效果。", "discussReviewFlag": "", + discussReviewCount:12, "discussReviewId": "", "discussReviewPictureAddress": "", "discussSubmitId": "", @@ -111,7 +112,9 @@ export default { "submitReplyVoList": [ { "createTime": "2022-06-21 21:35:12", + discussReviewCount:12, "createUser": 0, + "discussLikeCount": 12, "discussReplyId": 0, "discussReviewId": "", "replyContent": "教学重难点突出,板书条理清晰。教学步骤设计合理,由浅入深,循序渐进", diff --git a/src/router/index.js b/src/router/index.js index b531615..287070d 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,3 +1,11 @@ +/* + * @Author: lixg lixg@dongwu-inc.com + * @Date: 2022-11-21 17:28:10 + * @LastEditors: lixg lixg@dongwu-inc.com + * @LastEditTime: 2022-11-22 12:45:23 + * @FilePath: /fe-stu/src/router/index.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ import { createRouter, createWebHashHistory } from 'vue-router'; import routesConfig from './config'; // console.log('routesConfig', routesConfig) @@ -12,7 +20,7 @@ const routes = [ ] const router = createRouter({ - history: createWebHashHistory(), + history: createWebHashHistory("/fe-student"), routes }) diff --git a/src/views/ballot/BallotPage.vue b/src/views/ballot/BallotPage.vue index 2f818cd..5c2b91c 100644 --- a/src/views/ballot/BallotPage.vue +++ b/src/views/ballot/BallotPage.vue @@ -62,7 +62,7 @@
- +
通过对各级人员的软件平台培训,使其能够了解如何运用乾元坤和智能信息管理系统来提升企业管理水平,最大限度发挥软件产品在企业中的作用;
@@ -98,13 +98,16 @@
- {{data.detail?.voteStartTime + {{ + data.detail?.voteStartTime }}    至    {{ data.detail?.voteEndTime }}
距离结束还有   - {{parseInt(dayjs(data.detail?.voteEndTime).diff(dayjs(),'minute')/60)}}   小时  {{dayjs(data.detail?.voteEndTime).diff(dayjs(),'minute')%60}}  分钟 + {{ parseInt(dayjs(data.detail?.voteEndTime).diff(dayjs(), 'minute') / 60) }}   + 小时  {{ dayjs(data.detail?.voteEndTime).diff(dayjs(), 'minute') % 60 }}  分钟
@@ -129,45 +132,17 @@ - diff --git a/src/views/debate/DebatePage.vue b/src/views/debate/DebatePage.vue index 58375fd..5ae28e6 100644 --- a/src/views/debate/DebatePage.vue +++ b/src/views/debate/DebatePage.vue @@ -23,10 +23,10 @@
- +
参与情况
@@ -45,119 +45,14 @@
浏览数
- +
-
576票 @@ -170,181 +65,37 @@
- +
- - - - -