├── doc ├── deploy │ ├── README.md │ └── nginx.conf ├── images │ ├── exam_join.png │ ├── exam_join2.png │ ├── exam_list.png │ ├── exam_create.png │ ├── exam_detail.png │ ├── exam_record.png │ ├── exam_update.png │ ├── question_list.png │ ├── question_create.png │ └── question_update.png ├── references │ └── images │ │ ├── JWT概要.png │ │ ├── 登录校验方案.png │ │ ├── 单机tomcat应用登录检验.png │ │ └── tomcat开启session共享.png └── README.md ├── frontend └── exam │ ├── src │ ├── components │ │ ├── tools │ │ │ ├── index.js │ │ │ ├── DetailList.vue │ │ │ ├── Logo.vue │ │ │ ├── Breadcrumb.vue │ │ │ ├── HeadInfo.vue │ │ │ └── UserMenu.vue │ │ ├── Menu │ │ │ ├── index.js │ │ │ └── SideMenu.vue │ │ ├── Result │ │ │ └── index.js │ │ ├── Trend │ │ │ ├── index.js │ │ │ ├── index.less │ │ │ ├── index.md │ │ │ └── Trend.vue │ │ ├── Ellipsis │ │ │ ├── index.js │ │ │ ├── index.md │ │ │ └── Ellipsis.vue │ │ ├── CountDown │ │ │ ├── index.js │ │ │ └── index.md │ │ ├── NoticeIcon │ │ │ └── index.js │ │ ├── PageHeader │ │ │ └── index.js │ │ ├── GlobalFooter │ │ │ ├── index.js │ │ │ └── GlobalFooter.vue │ │ ├── GlobalHeader │ │ │ └── index.js │ │ ├── IconSelector │ │ │ ├── index.js │ │ │ ├── README.md │ │ │ └── IconSelector.vue │ │ ├── NumberInfo │ │ │ ├── index.js │ │ │ ├── index.md │ │ │ ├── NumberInfo.vue │ │ │ └── index.less │ │ ├── Exception │ │ │ ├── index.js │ │ │ └── type.js │ │ ├── SettingDrawer │ │ │ ├── index.js │ │ │ └── SettingItem.vue │ │ ├── DescriptionList │ │ │ └── index.js │ │ ├── MultiTab │ │ │ ├── index.js │ │ │ └── index.less │ │ ├── AvatarList │ │ │ ├── index.js │ │ │ ├── Item.vue │ │ │ ├── index.less │ │ │ └── index.md │ │ ├── StandardFormRow │ │ │ └── index.js │ │ ├── ArticleListContent │ │ │ ├── index.js │ │ │ └── ArticleListContent.vue │ │ ├── FooterToolbar │ │ │ ├── index.js │ │ │ ├── index.less │ │ │ ├── FooterToolBar.vue │ │ │ └── index.md │ │ ├── index.less │ │ ├── Charts │ │ │ ├── chart.less │ │ │ ├── smooth.area.less │ │ │ ├── MiniSmoothArea.vue │ │ │ ├── Bar.vue │ │ │ ├── MiniBar.vue │ │ │ ├── MiniArea.vue │ │ │ ├── TransferBar.vue │ │ │ ├── Liquid.vue │ │ │ ├── Radar.vue │ │ │ ├── MiniProgress.vue │ │ │ ├── RankList.vue │ │ │ └── Trend.vue │ │ ├── PageLoading │ │ │ └── index.jsx │ │ ├── _util │ │ │ └── util.js │ │ ├── TagSelect │ │ │ └── TagSelectOption.jsx │ │ └── index.js │ ├── assets │ │ ├── logo.png │ │ ├── icons │ │ │ ├── mine.svg │ │ │ ├── question-admin.svg │ │ │ ├── exam-list.svg │ │ │ └── bx-analyse.svg │ │ ├── background.svg │ │ └── logo.svg │ ├── utils │ │ ├── permissions.js │ │ ├── domUtil.js │ │ ├── filter.js │ │ ├── axios.js │ │ ├── device.js │ │ ├── utils.less │ │ ├── helper │ │ │ └── permission.js │ │ ├── storage.js │ │ ├── util.js │ │ ├── request.js │ │ └── mixin.js │ ├── views │ │ ├── 404.vue │ │ ├── exception │ │ │ ├── 403.vue │ │ │ ├── 404.vue │ │ │ └── 500.vue │ │ ├── Home.vue │ │ ├── home │ │ │ ├── default.less │ │ │ ├── ListItem.vue │ │ │ ├── List.vue │ │ │ └── Banner.vue │ │ ├── user │ │ │ └── RegisterResult.vue │ │ ├── list │ │ │ └── modules │ │ │ │ ├── QuestionViewModal.vue │ │ │ │ └── CreateForm.vue │ │ └── account │ │ │ └── settings │ │ │ └── Custom.vue │ ├── layouts │ │ ├── BlankLayout.vue │ │ ├── index.js │ │ └── RouteView.vue │ ├── router │ │ └── index.js │ ├── api │ │ ├── user.js │ │ ├── index.js │ │ └── login.js │ ├── store │ │ ├── index.js │ │ ├── getters.js │ │ ├── mutation-types.js │ │ └── modules │ │ │ └── permission.js │ ├── App.vue │ ├── core │ │ ├── lazy_use.js │ │ ├── use.js │ │ ├── icons.js │ │ ├── directives │ │ │ └── action.js │ │ ├── bootstrap.js │ │ └── lazy_lib │ │ │ └── components_use.js │ ├── main.js │ └── config │ │ └── defaultSettings.js │ ├── .gitattributes │ ├── .env │ ├── tests │ └── unit │ │ └── .eslintrc.js │ ├── .prettierrc │ ├── public │ ├── logo.png │ ├── avatar2.jpg │ ├── home │ │ ├── cover1.jpg │ │ ├── cover2.jpg │ │ ├── cover3.jpg │ │ ├── cover4.jpg │ │ └── cover5.jpg │ ├── loading │ │ ├── loading.html │ │ ├── option2 │ │ │ ├── loading.css │ │ │ ├── loading.svg │ │ │ └── html_code_segment.html │ │ └── loading.css │ └── index.html │ ├── .travis.yml │ ├── jsconfig.json │ ├── .gitignore │ ├── webstorm.config.js │ ├── babel.config.js │ ├── docs │ ├── multi-tabs.md │ ├── add-page-loading-animate.md │ ├── webpack-bundle-analyzer.md │ └── load-on-demand.md │ ├── jest.config.js │ ├── .editorconfig │ └── LICENSE ├── backend └── exam │ ├── .gitignore │ ├── src │ └── main │ │ ├── resources │ │ ├── application-dev.yml │ │ ├── application-prod.yml │ │ └── application.yml │ │ └── java │ │ └── com │ │ └── huawei │ │ └── l00379880 │ │ └── exam │ │ ├── dto │ │ ├── package-info.java │ │ └── RegisterDTO.java │ │ ├── config │ │ ├── package-info.java │ │ ├── IntercepterConfig.java │ │ └── CORSConf.java │ │ ├── entity │ │ ├── package-info.java │ │ ├── QuestionOption.java │ │ ├── Page.java │ │ ├── ExamRecordLevel.java │ │ ├── Action.java │ │ ├── Role.java │ │ ├── QuestionLevel.java │ │ ├── QuestionType.java │ │ ├── QuestionCategory.java │ │ ├── User.java │ │ ├── ExamRecord.java │ │ ├── Question.java │ │ └── Exam.java │ │ ├── exception │ │ ├── package-info.java │ │ └── ExamException.java │ │ ├── service │ │ ├── package-info.java │ │ └── UserService.java │ │ ├── controller │ │ └── package-info.java │ │ ├── repository │ │ ├── package-info.java │ │ ├── ExamRepository.java │ │ ├── PageRepository.java │ │ ├── RoleRepository.java │ │ ├── ActionRepository.java │ │ ├── QuestionTypeRepository.java │ │ ├── QuestionLevelRepository.java │ │ ├── QuestionOptionRepository.java │ │ ├── ExamRecordLevelRepository.java │ │ ├── QuestionCategoryRepository.java │ │ ├── QuestionRepository.java │ │ ├── ExamRecordRepository.java │ │ └── UserRepository.java │ │ ├── utils │ │ ├── package-info.java │ │ ├── ResultVOUtil.java │ │ └── JwtUtils.java │ │ ├── qo │ │ ├── package-info.java │ │ ├── DownloadQo.java │ │ ├── UploadModel.java │ │ ├── UploadModel2.java │ │ └── LoginQo.java │ │ ├── ExamApplication.java │ │ ├── enums │ │ ├── LoginTypeEnum.java │ │ ├── QuestionEnum.java │ │ ├── RoleEnum.java │ │ └── ResultEnum.java │ │ └── vo │ │ ├── ActionVo.java │ │ ├── PageVo.java │ │ ├── QuestionOptionCreateVo.java │ │ ├── RoleVo.java │ │ ├── ExamQuestionSelectVo.java │ │ ├── ExamDetailVo.java │ │ ├── QuestionOptionVo.java │ │ ├── ExamRecordVo.java │ │ ├── ExamQuestionTypeVo.java │ │ ├── ExamCardVo.java │ │ ├── ExamPageVo.java │ │ ├── ResultVO.java │ │ ├── QuestionSelectionVo.java │ │ ├── QuestionPageVo.java │ │ ├── RecordDetailVo.java │ │ ├── QuestionDetailVo.java │ │ ├── UserVo.java │ │ ├── UserInfoVo.java │ │ ├── QuestionCreateSimplifyVo.java │ │ ├── ExamCreateVo.java │ │ ├── QuestionCreateVo.java │ │ ├── JsonData.java │ │ └── QuestionVo.java │ ├── images │ ├── 拦截器注入配置文件属性.png │ └── 拦截器注入配置文件属性2.png │ └── README.md ├── .gitignore ├── README.en.md ├── LICENSE └── README.md /doc/deploy/README.md: -------------------------------------------------------------------------------- 1 | # 在线考试系统的部署文档 -------------------------------------------------------------------------------- /frontend/exam/src/components/tools/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /frontend/exam/.gitattributes: -------------------------------------------------------------------------------- 1 | public/* linguist-vendored -------------------------------------------------------------------------------- /frontend/exam/.env: -------------------------------------------------------------------------------- 1 | NODE_ENV=production 2 | VUE_APP_PREVIEW=false 3 | -------------------------------------------------------------------------------- /backend/exam/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | *.iml 3 | src/main/resources/public 4 | target/ -------------------------------------------------------------------------------- /frontend/exam/src/components/Menu/index.js: -------------------------------------------------------------------------------- 1 | import SMenu from './menu' 2 | export default SMenu 3 | -------------------------------------------------------------------------------- /backend/exam/src/main/resources/application-dev.yml: -------------------------------------------------------------------------------- 1 | server: 2 | servlet: 3 | context-path: /api -------------------------------------------------------------------------------- /frontend/exam/src/components/Result/index.js: -------------------------------------------------------------------------------- 1 | import Result from './Result.vue' 2 | export default Result 3 | -------------------------------------------------------------------------------- /frontend/exam/tests/unit/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | jest: true 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /frontend/exam/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 120, 3 | "semi": false, 4 | "singleQuote": true 5 | } 6 | -------------------------------------------------------------------------------- /frontend/exam/src/components/Trend/index.js: -------------------------------------------------------------------------------- 1 | import Trend from './Trend.vue' 2 | 3 | export default Trend 4 | -------------------------------------------------------------------------------- /doc/images/exam_join.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_join.png -------------------------------------------------------------------------------- /doc/images/exam_join2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_join2.png -------------------------------------------------------------------------------- /doc/images/exam_list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_list.png -------------------------------------------------------------------------------- /frontend/exam/src/components/Ellipsis/index.js: -------------------------------------------------------------------------------- 1 | import Ellipsis from './Ellipsis' 2 | 3 | export default Ellipsis 4 | -------------------------------------------------------------------------------- /doc/images/exam_create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_create.png -------------------------------------------------------------------------------- /doc/images/exam_detail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_detail.png -------------------------------------------------------------------------------- /doc/images/exam_record.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_record.png -------------------------------------------------------------------------------- /doc/images/exam_update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/exam_update.png -------------------------------------------------------------------------------- /doc/images/question_list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/question_list.png -------------------------------------------------------------------------------- /frontend/exam/src/components/CountDown/index.js: -------------------------------------------------------------------------------- 1 | import CountDown from './CountDown' 2 | 3 | export default CountDown 4 | -------------------------------------------------------------------------------- /frontend/exam/src/components/NoticeIcon/index.js: -------------------------------------------------------------------------------- 1 | import NoticeIcon from './NoticeIcon' 2 | export default NoticeIcon 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/PageHeader/index.js: -------------------------------------------------------------------------------- 1 | import PageHeader from './PageHeader' 2 | export default PageHeader 3 | -------------------------------------------------------------------------------- /doc/images/question_create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/question_create.png -------------------------------------------------------------------------------- /doc/images/question_update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/images/question_update.png -------------------------------------------------------------------------------- /frontend/exam/public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/logo.png -------------------------------------------------------------------------------- /frontend/exam/src/components/GlobalFooter/index.js: -------------------------------------------------------------------------------- 1 | import GlobalFooter from './GlobalFooter' 2 | export default GlobalFooter 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/GlobalHeader/index.js: -------------------------------------------------------------------------------- 1 | import GlobalHeader from './GlobalHeader' 2 | export default GlobalHeader 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/IconSelector/index.js: -------------------------------------------------------------------------------- 1 | import IconSelector from './IconSelector' 2 | export default IconSelector 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/NumberInfo/index.js: -------------------------------------------------------------------------------- 1 | import NumberInfo from './NumberInfo' 2 | 3 | export default NumberInfo 4 | -------------------------------------------------------------------------------- /doc/references/images/JWT概要.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/references/images/JWT概要.png -------------------------------------------------------------------------------- /doc/references/images/登录校验方案.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/references/images/登录校验方案.png -------------------------------------------------------------------------------- /frontend/exam/public/avatar2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/avatar2.jpg -------------------------------------------------------------------------------- /frontend/exam/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/src/assets/logo.png -------------------------------------------------------------------------------- /frontend/exam/src/components/Exception/index.js: -------------------------------------------------------------------------------- 1 | import ExceptionPage from './ExceptionPage.vue' 2 | export default ExceptionPage 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/SettingDrawer/index.js: -------------------------------------------------------------------------------- 1 | import SettingDrawer from './SettingDrawer' 2 | export default SettingDrawer 3 | -------------------------------------------------------------------------------- /backend/exam/images/拦截器注入配置文件属性.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/backend/exam/images/拦截器注入配置文件属性.png -------------------------------------------------------------------------------- /backend/exam/images/拦截器注入配置文件属性2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/backend/exam/images/拦截器注入配置文件属性2.png -------------------------------------------------------------------------------- /frontend/exam/public/home/cover1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/home/cover1.jpg -------------------------------------------------------------------------------- /frontend/exam/public/home/cover2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/home/cover2.jpg -------------------------------------------------------------------------------- /frontend/exam/public/home/cover3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/home/cover3.jpg -------------------------------------------------------------------------------- /frontend/exam/public/home/cover4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/home/cover4.jpg -------------------------------------------------------------------------------- /frontend/exam/public/home/cover5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/frontend/exam/public/home/cover5.jpg -------------------------------------------------------------------------------- /frontend/exam/src/components/DescriptionList/index.js: -------------------------------------------------------------------------------- 1 | import DescriptionList from './DescriptionList' 2 | export default DescriptionList 3 | -------------------------------------------------------------------------------- /frontend/exam/src/components/MultiTab/index.js: -------------------------------------------------------------------------------- 1 | import MultiTab from './MultiTab' 2 | import './index.less' 3 | 4 | export default MultiTab 5 | -------------------------------------------------------------------------------- /doc/references/images/单机tomcat应用登录检验.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/references/images/单机tomcat应用登录检验.png -------------------------------------------------------------------------------- /frontend/exam/src/components/AvatarList/index.js: -------------------------------------------------------------------------------- 1 | import AvatarList from './List' 2 | import './index.less' 3 | 4 | export default AvatarList 5 | -------------------------------------------------------------------------------- /frontend/exam/src/components/StandardFormRow/index.js: -------------------------------------------------------------------------------- 1 | import StandardFormRow from './StandardFormRow' 2 | 3 | export default StandardFormRow 4 | -------------------------------------------------------------------------------- /doc/references/images/tomcat开启session共享.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yimning/spring-boot-online-exam/HEAD/doc/references/images/tomcat开启session共享.png -------------------------------------------------------------------------------- /frontend/exam/src/components/ArticleListContent/index.js: -------------------------------------------------------------------------------- 1 | import ArticleListContent from './ArticleListContent' 2 | 3 | export default ArticleListContent 4 | -------------------------------------------------------------------------------- /backend/exam/src/main/resources/application-prod.yml: -------------------------------------------------------------------------------- 1 | server: 2 | servlet: 3 | context-path: # 这里配置为空是因为生产环境法需要自己配置nginx的转发,nginx可以参考我的配置doc/deploy/nginx.conf -------------------------------------------------------------------------------- /frontend/exam/src/components/FooterToolbar/index.js: -------------------------------------------------------------------------------- 1 | import FooterToolBar from './FooterToolBar' 2 | import './index.less' 3 | 4 | export default FooterToolBar 5 | -------------------------------------------------------------------------------- /frontend/exam/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 10.15.0 4 | cache: yarn 5 | script: 6 | - yarn 7 | - yarn run lint --no-fix && yarn run build 8 | -------------------------------------------------------------------------------- /frontend/exam/src/components/index.less: -------------------------------------------------------------------------------- 1 | @import "~ant-design-vue/lib/style/index"; 2 | 3 | // The prefix to use on all css classes from ant-pro. 4 | @ant-pro-prefix : ant-pro; -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/dto/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-16 23:38 3 | * Description : 用于接口数据传输 4 | */ 5 | package com.huawei.l00379880.exam.dto; -------------------------------------------------------------------------------- /frontend/exam/src/components/tools/DetailList.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/config/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-14 08:20 3 | * Description : 项目自定义配置 4 | */ 5 | package com.huawei.l00379880.exam.config; -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/entity/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-14 00:34 3 | * Description : 数据库实体类 4 | */ 5 | package com.huawei.l00379880.exam.entity; -------------------------------------------------------------------------------- /frontend/exam/src/utils/permissions.js: -------------------------------------------------------------------------------- 1 | export function actionToObject (json) { 2 | try { 3 | return JSON.parse(json) 4 | } catch (e) { 5 | console.log('err', e.message) 6 | } 7 | return [] 8 | } 9 | -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/exception/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-17 07:51 3 | * Description : 自定义异常 4 | */ 5 | package com.huawei.l00379880.exam.exception; -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/service/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-14 08:20 3 | * Description : 服务接口与实现 4 | */ 5 | package com.huawei.l00379880.exam.service; -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/controller/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-14 08:20 3 | * Description : 对外REST接口 4 | */ 5 | package com.huawei.l00379880.exam.controller; -------------------------------------------------------------------------------- /backend/exam/src/main/java/com/huawei/l00379880/exam/repository/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Created By Liang Shan Guang at 2019-05-14 08:20 3 | * Description : 数据库操作接口 4 | */ 5 | package com.huawei.l00379880.exam.repository; -------------------------------------------------------------------------------- /frontend/exam/public/loading/loading.html: -------------------------------------------------------------------------------- 1 |
{{ item.content }}
10 |{{ content }}
5 | 6 |