From 42d1d8adfc7d093a889dbdd908218df7ede47d2e Mon Sep 17 00:00:00 2001 From: lywsvip Date: Thu, 7 May 2026 16:02:30 +0800 Subject: [PATCH] init --- .editorconfig | 14 + .env | 3 + .env.development | 3 + .env.test | 3 + .eslintignore | 14 + .eslintrc | 117 + .gitignore | 24 + .gitlab-ci.yml | 29 + .prettierrc | 10 + .stylelintignore | 8 + Dockerfile | 10 + README.md | 186 + assets/svg/assets-t-logo.svg | 66 + assets/svg/icon-ztsx 2.svg | 1 + assets/svg/img_logo.svg | 7 + commitlint.config.js | 2 + default.conf | 52 + docs/_media/icon.png | Bin 0 -> 10117 bytes docs/_media/icon.svg | 155 + docs/_media/image-20230310155201062.png | Bin 0 -> 276676 bytes docs/_media/image-20230310155305993.png | Bin 0 -> 318663 bytes docs/_media/image-20230313092444215.png | Bin 0 -> 206840 bytes docs/_media/image-20230313104231264.png | Bin 0 -> 253716 bytes docs/_media/image-20230313104443270.png | Bin 0 -> 237991 bytes docs/_media/image-20230315102553195.png | Bin 0 -> 262805 bytes docs/_media/image-20230315102835351.png | Bin 0 -> 277585 bytes docs/_media/image-20230315103016408.png | Bin 0 -> 306808 bytes docs/cover.md | 10 + docs/index.html | 36 + docs/zh-cn/README.md | 234 + docs/相关命令.txt | 9 + globals.d.ts | 15 + index.html | 14 + mock/index.ts | 592 ++ mockProdServer.ts | 8 + package-lock.json | 7415 +++++++++++++++++ package.json | 98 + pnpm-lock.yaml | 5928 +++++++++++++ public/favicon.ico | Bin 0 -> 2076 bytes public/logo.png | Bin 0 -> 10117 bytes src/App.vue | 33 + src/api/coupon.ts | 34 + src/api/custom.ts | 17 + src/api/detail.ts | 23 + src/api/form.ts | 16 + src/api/list.ts | 79 + src/api/model/customModel.ts | 14 + src/api/model/detailModel.ts | 23 + src/api/model/formModel.ts | 12 + src/api/model/listModel.ts | 86 + src/api/model/serviceModel.ts | 58 + src/api/model/userModel.ts | 19 + src/api/order.ts | 35 + src/api/service.ts | 318 + src/api/user.ts | 38 + src/assets/assets-setting-auto.svg | 13 + src/assets/assets-setting-dark.svg | 5 + src/assets/assets-setting-light.svg | 13 + src/assets/btn_clean.png | Bin 0 -> 1672 bytes src/assets/btn_delete_hover.png | Bin 0 -> 837 bytes src/assets/btn_delete_nor.png | Bin 0 -> 690 bytes src/assets/btn_pinglun_hover.png | Bin 0 -> 847 bytes src/assets/btn_pinglun_nor.png | Bin 0 -> 692 bytes src/assets/btn_shuaxin@2x.png | Bin 0 -> 1364 bytes src/assets/btn_tuijian_nor.png | Bin 0 -> 746 bytes src/assets/btn_zan_nor@3x.png | Bin 0 -> 1618 bytes src/assets/btn_zhiding_nor.png | Bin 0 -> 736 bytes src/assets/default/404@2x.png | Bin 0 -> 94208 bytes src/assets/default/500@2x.png | Bin 0 -> 71574 bytes src/assets/default/duanwang@2x.png | Bin 0 -> 81797 bytes src/assets/default/noAuthority@2x.png | Bin 0 -> 69995 bytes src/assets/default/wuwang@2x.png | Bin 0 -> 84404 bytes src/assets/default/zwnr@2x.png | Bin 0 -> 71589 bytes src/assets/goBack.png | Bin 0 -> 748 bytes src/assets/head@3x.png | Bin 0 -> 6364 bytes src/assets/icon-fangda.svg | 3 + src/assets/icon-shangjia1.png | Bin 0 -> 2386 bytes src/assets/icon-shangjia2.png | Bin 0 -> 4205 bytes src/assets/icon-shangjia3.png | Bin 0 -> 3636 bytes src/assets/icon-shangjia4.png | Bin 0 -> 4221 bytes src/assets/icon-shangjia5.png | Bin 0 -> 4124 bytes src/assets/icon-shangjia6.png | Bin 0 -> 4491 bytes src/assets/icon-ztsx-hover.svg | 1 + src/assets/icon-ztsx.svg | 1 + src/assets/icon_beizhu@2x.png | Bin 0 -> 1702 bytes src/assets/icon_beizhu_sel@2x.png | Bin 0 -> 2375 bytes src/assets/icon_dingdan.svg | 8 + src/assets/icon_fuwu.svg | 8 + src/assets/icon_kehu.svg | 9 + src/assets/icon_linjin@2x.png | Bin 0 -> 1871 bytes src/assets/icon_menu_tongzhi@2x.png | Bin 0 -> 1539 bytes src/assets/icon_qiye.svg | 7 + src/assets/icon_quyu.svg | 6 + src/assets/icon_renyuan.svg | 8 + src/assets/icon_team_guanbi.png | Bin 0 -> 460 bytes src/assets/icon_team_guanbi2.png | Bin 0 -> 462 bytes src/assets/icon_zhuyi@2x.png | Bin 0 -> 1525 bytes src/assets/img_denglu-bg@2x.png | Bin 0 -> 3489932 bytes src/assets/logBlackTem.png | Bin 0 -> 546 bytes src/assets/logBlackTemFull.png | Bin 0 -> 1938 bytes src/assets/logo-full.svg | 23 + src/assets/logo.svg | 19 + src/assets/logoBlackTem.svg | 12 + src/assets/noSecondMenu-menu-headPic.png | Bin 0 -> 17852 bytes src/assets/noSecondMenu-menu-hover.png | Bin 0 -> 4958 bytes src/assets/pic-biaoyu.png | Bin 0 -> 14636 bytes src/assets/pic-biaoyu@2x.png | Bin 0 -> 17938 bytes src/assets/pic-touxiang@2x(1).png | Bin 0 -> 2468 bytes src/assets/pic-touxiang@2x.png | Bin 0 -> 2132 bytes src/assets/test-img/Shape.svg | 1 + src/assets/test-img/Shapehover.svg | 1 + src/assets/test-img/assets-empty.svg | 6 + src/assets/test-img/assets-logo-full.svg | 23 + src/assets/test-img/assets-result-403.svg | 32 + src/assets/test-img/assets-result-404.svg | 36 + src/assets/test-img/assets-result-500.svg | 52 + src/assets/test-img/assets-result-ie.svg | 33 + .../test-img/assets-result-maintenance.svg | 49 + src/assets/test-img/assets-result-wifi.svg | 23 + src/assets/test-img/assets-slide-logout.svg | 3 + src/assets/test-img/assets-t-logo.svg | 41 + src/assets/test-img/background-login.png | Bin 0 -> 70439 bytes src/assets/test-img/bj2.png | Bin 0 -> 688903 bytes src/assets/test-img/btn_kaiguan.svg | 7 + src/assets/test-img/btn_quit.svg | 7 + src/assets/test-img/cutter@2x.png | Bin 0 -> 3836 bytes src/assets/test-img/delete-active.png | Bin 0 -> 1468 bytes src/assets/test-img/delete-hover.png | Bin 0 -> 1309 bytes src/assets/test-img/delete.png | Bin 0 -> 1481 bytes src/assets/test-img/dh-bottom.png | Bin 0 -> 5104 bytes src/assets/test-img/dh-top.png | Bin 0 -> 10348 bytes src/assets/test-img/icon_ddgl_nor.svg | 8 + src/assets/test-img/icon_fwry_nor.svg | 6 + src/assets/test-img/icon_jggl_nor.svg | 11 + src/assets/test-img/icon_khgl_nor.svg | 3 + src/assets/test-img/icon_menu_cheliang.svg | 1 + src/assets/test-img/icon_menu_diaodu.svg | 1 + src/assets/test-img/icon_menu_grzx.svg | 1 + src/assets/test-img/icon_menu_service.svg | 8 + src/assets/test-img/icon_menu_shuju.svg | 1 + src/assets/test-img/icon_menu_zhuye.svg | 12 + src/assets/test-img/icon_menu_zj.svg | 1 + src/assets/test-img/icon_more.png | Bin 0 -> 376 bytes src/assets/test-img/icon_more@3x.png | Bin 0 -> 373 bytes src/assets/test-img/icon_pjgl_nor.svg | 8 + src/assets/test-img/icon_xq.svg | 1 + src/assets/test-img/img_mobile@2x.png | Bin 0 -> 119563 bytes src/assets/test-img/jia.png | Bin 0 -> 1694 bytes src/assets/test-img/jia2.png | Bin 0 -> 1607 bytes src/assets/test-img/jian.png | Bin 0 -> 1510 bytes src/assets/test-img/jian2.png | Bin 0 -> 1326 bytes src/assets/test-img/logo.png | Bin 0 -> 4675 bytes src/assets/test-img/logofull.png | Bin 0 -> 20191 bytes src/assets/test-img/modify-anxia.png | Bin 0 -> 1298 bytes src/assets/test-img/modify-hover.png | Bin 0 -> 1293 bytes src/assets/test-img/modify.png | Bin 0 -> 1318 bytes src/assets/test-img/pic-touxiang.png | Bin 0 -> 45272 bytes src/assets/test-img/tx.png | Bin 0 -> 6339 bytes src/assets/touxiang.png | Bin 0 -> 1180064 bytes src/assets/upload.svg | 1 + src/assets/xiaohouzi@2x.png | Bin 0 -> 47054 bytes src/components/Confirm/index.vue | 70 + src/components/Delete/index.vue | 69 + src/components/ImageMagnify/index.vue | 36 + src/components/Message/ProdDisabled.vue | 118 + src/components/Message/Success.vue | 82 + src/components/editDialog/index.vue | 183 + src/components/expBall/ExpBall.vue | 131 + src/components/noData/index.vue | 61 + src/components/product-card/index.vue | 131 + src/components/result/index.vue | 99 + src/components/switchBar/switchBar.vue | 90 + src/components/switchBar/switchBarindex.vue | 66 + src/components/switchBar/switchBartop.vue | 92 + src/components/switchBar/type.ts | 5 + src/components/thumbnail/index.vue | 43 + src/components/trend/index.vue | 114 + src/config/configuration.ts | 4 + src/config/global.ts | 2 + src/config/proxy.ts | 21 + src/config/style.ts | 11 + src/constants/index.ts | 131 + src/czriComponents/index.less | 460 + src/hooks/event/useWindowSizeFn.ts | 38 + src/hooks/index.ts | 62 + src/layouts/components/Breadcrumb.vue | 102 + src/layouts/components/Content.vue | 53 + src/layouts/components/EaseRequest.vue | 492 ++ src/layouts/components/Footer.vue | 18 + src/layouts/components/LayoutContentSide.vue | 192 + src/layouts/components/LayoutSideNav.vue | 26 + src/layouts/components/LogInfo.vue | 234 + src/layouts/components/Notice.vue | 224 + src/layouts/components/Search.vue | 128 + src/layouts/index.vue | 93 + src/layouts/simpleComponents/MenuContent.vue | 169 + src/layouts/simpleComponents/SideNav.vue | 179 + src/main.ts | 20 + src/pages/coupon/couponList/addCoupon.vue | 353 + .../couponList/components/SearchForm.vue | 90 + .../couponList/components/TableList.vue | 232 + .../couponList/components/assignDialog.vue | 300 + src/pages/coupon/couponList/constants.ts | 223 + src/pages/coupon/couponList/index.vue | 247 + src/pages/coupon/index.less | 293 + src/pages/custom/index.less | 259 + .../management/components/SearchForm.vue | 63 + .../management/components/TableList.vue | 142 + src/pages/custom/management/constants.ts | 58 + src/pages/custom/management/index.vue | 186 + .../dashboard/base/components/MiddleChart.vue | 193 + .../base/components/OutputOverview.vue | 265 + .../dashboard/base/components/TopPanel.vue | 228 + .../dashboard/base/components/operate.vue | 57 + src/pages/dashboard/base/constants.ts | 9 + src/pages/dashboard/base/index.less | 317 + src/pages/dashboard/base/index.ts | 530 ++ src/pages/dashboard/base/index.vue | 203 + src/pages/dashboard/base/type.ts | 135 + src/pages/default/404.vue | 40 + src/pages/default/forbidden.vue | 24 + src/pages/default/netWorkAnomaly.vue | 24 + src/pages/default/netWorkDisconnection.vue | 24 + src/pages/default/serviceError.vue | 24 + .../authentication/components/ApplyDialog.vue | 133 + .../authentication/components/DialogForm.vue | 170 + .../authentication/components/SearchForm.vue | 100 + .../authentication/components/TableList.vue | 293 + .../institution/authentication/constants.ts | 208 + .../institution/authentication/index.vue | 243 + src/pages/institution/index.less | 250 + .../information/components/DialogForm.vue | 186 + .../information/components/SearchForm.vue | 100 + .../information/components/TableList.vue | 309 + .../institution/information/constants.ts | 203 + src/pages/institution/information/index.vue | 213 + .../information/informationDetail.vue | 598 ++ src/pages/login/components/Login.vue | 126 + src/pages/login/components/Register.vue | 151 + src/pages/login/index.less | 239 + src/pages/login/index.vue | 82 + .../dispatchList/components/DialogForm.vue | 158 + .../dispatchList/components/SearchForm.vue | 126 + .../dispatchList/components/TableList.vue | 267 + .../dispatchList/components/assignDialog.vue | 315 + src/pages/order/dispatchList/constants.ts | 215 + src/pages/order/dispatchList/index.vue | 258 + .../historyList/components/DialogForm.vue | 160 + .../historyList/components/SearchForm.vue | 181 + .../historyList/components/TableList.vue | 169 + src/pages/order/historyList/constants.ts | 181 + src/pages/order/historyList/index.vue | 178 + src/pages/order/historyList/orderDetail.vue | 792 ++ src/pages/order/index.less | 293 + .../order/orderList/components/DialogForm.vue | 157 + .../order/orderList/components/SearchForm.vue | 133 + .../order/orderList/components/TableList.vue | 203 + src/pages/order/orderList/constants.ts | 162 + src/pages/order/orderList/index.vue | 204 + src/pages/order/orderList/orderDetail.vue | 850 ++ .../refundList/components/DialogForm.vue | 161 + .../refundList/components/SearchForm.vue | 115 + .../order/refundList/components/TableList.vue | 220 + .../refundList/components/detailDialog.vue | 255 + src/pages/order/refundList/constants.ts | 348 + src/pages/order/refundList/index.vue | 189 + .../authentication/components/ApplyDialog.vue | 132 + .../authentication/components/DialogForm.vue | 164 + .../authentication/components/SearchForm.vue | 100 + .../authentication/components/TableList.vue | 317 + .../personnel/authentication/constants.ts | 233 + src/pages/personnel/authentication/index.vue | 264 + src/pages/personnel/index.less | 249 + .../information/components/DialogForm.vue | 187 + .../information/components/SearchForm.vue | 84 + .../information/components/TableList.vue | 223 + src/pages/personnel/information/constants.ts | 145 + src/pages/personnel/information/index.vue | 203 + .../information/informationDetail.vue | 593 ++ src/pages/reply/index.less | 250 + .../reply/order/components/SearchForm.vue | 132 + .../reply/order/components/TableList.vue | 296 + src/pages/reply/order/constants.ts | 51 + src/pages/reply/order/detail.vue | 1039 +++ src/pages/reply/order/index.less | 247 + src/pages/reply/order/index.vue | 386 + src/pages/reply/order/objectDetail.vue | 1171 +++ src/pages/reply/order/type.ts | 136 + src/pages/service/index.less | 266 + src/pages/service/region/city.ts | 1686 ++++ .../service/region/components/DialogForm.vue | 219 + .../service/region/components/TableList.vue | 187 + .../region/components/addServiceDialog.vue | 498 ++ .../region/components/regionTableList.vue | 265 + .../service/region/components/ruleDialog.vue | 270 + src/pages/service/region/constants.ts | 56 + src/pages/service/region/editRegion.vue | 419 + src/pages/service/region/index.vue | 273 + src/pages/service/region/model.ts | 12 + src/pages/service/region/setBusiness.vue | 571 ++ src/pages/service/service/addService.vue | 540 ++ .../service/service/components/SearchForm.vue | 105 + .../service/service/components/TableList.vue | 239 + .../service/components/previewPopup.vue | 165 + src/pages/service/service/constants.ts | 108 + src/pages/service/service/index.vue | 302 + .../serviceType/components/DialogForm.vue | 293 + .../serviceType/components/SearchForm.vue | 100 + .../serviceType/components/TableList.vue | 248 + src/pages/service/serviceType/constants.ts | 95 + src/pages/service/serviceType/index.vue | 293 + src/pages/service/serviceType/type.ts | 134 + src/permission.ts | 81 + src/router/index.ts | 90 + src/router/modules/base.ts | 20 + src/router/modules/components.ts | 348 + src/router/modules/others.ts | 173 + src/store/index.ts | 15 + src/store/modules/notification.ts | 80 + src/store/modules/permission.ts | 68 + src/store/modules/setting.ts | 93 + src/store/modules/tabs-router.ts | 89 + src/store/modules/user.ts | 48 + src/style/componentsReast/index.less | 2087 +++++ src/style/componentsReast/reset.less | 40 + src/style/font-family.less | 6 + src/style/index.less | 9 + src/style/normal.less | 151 + src/style/theme/default.less | 435 + src/style/theme/index.less | 1 + src/style/variables.less | 25 + src/types/axios.d.ts | 27 + src/types/globals.d.ts | 18 + src/types/interface.d.ts | 53 + src/utils/charts.ts | 80 + src/utils/color.ts | 56 + src/utils/commonData.ts | 29 + src/utils/date.ts | 43 + src/utils/emoji/index.ts | 218 + src/utils/index.ts | 213 + src/utils/request/Axios.ts | 247 + src/utils/request/AxiosCancel.ts | 50 + src/utils/request/AxiosTransform.ts | 49 + src/utils/request/index.ts | 227 + src/utils/request/utils.ts | 58 + src/utils/validate.ts | 147 + src/vite-env.d.ts | 9 + stylelint.config.js | 5 + tsconfig.json | 23 + tsconfig.node.json | 8 + vite.config.ts | 74 + 351 files changed, 54282 insertions(+) create mode 100644 .editorconfig create mode 100644 .env create mode 100644 .env.development create mode 100644 .env.test create mode 100644 .eslintignore create mode 100644 .eslintrc create mode 100644 .gitignore create mode 100644 .gitlab-ci.yml create mode 100644 .prettierrc create mode 100644 .stylelintignore create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 assets/svg/assets-t-logo.svg create mode 100644 assets/svg/icon-ztsx 2.svg create mode 100644 assets/svg/img_logo.svg create mode 100644 commitlint.config.js create mode 100644 default.conf create mode 100644 docs/_media/icon.png create mode 100644 docs/_media/icon.svg create mode 100644 docs/_media/image-20230310155201062.png create mode 100644 docs/_media/image-20230310155305993.png create mode 100644 docs/_media/image-20230313092444215.png create mode 100644 docs/_media/image-20230313104231264.png create mode 100644 docs/_media/image-20230313104443270.png create mode 100644 docs/_media/image-20230315102553195.png create mode 100644 docs/_media/image-20230315102835351.png create mode 100644 docs/_media/image-20230315103016408.png create mode 100644 docs/cover.md create mode 100644 docs/index.html create mode 100644 docs/zh-cn/README.md create mode 100644 docs/相关命令.txt create mode 100644 globals.d.ts create mode 100644 index.html create mode 100644 mock/index.ts create mode 100644 mockProdServer.ts create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 public/favicon.ico create mode 100644 public/logo.png create mode 100644 src/App.vue create mode 100644 src/api/coupon.ts create mode 100644 src/api/custom.ts create mode 100644 src/api/detail.ts create mode 100644 src/api/form.ts create mode 100644 src/api/list.ts create mode 100644 src/api/model/customModel.ts create mode 100644 src/api/model/detailModel.ts create mode 100644 src/api/model/formModel.ts create mode 100644 src/api/model/listModel.ts create mode 100644 src/api/model/serviceModel.ts create mode 100644 src/api/model/userModel.ts create mode 100644 src/api/order.ts create mode 100644 src/api/service.ts create mode 100644 src/api/user.ts create mode 100644 src/assets/assets-setting-auto.svg create mode 100644 src/assets/assets-setting-dark.svg create mode 100644 src/assets/assets-setting-light.svg create mode 100644 src/assets/btn_clean.png create mode 100644 src/assets/btn_delete_hover.png create mode 100644 src/assets/btn_delete_nor.png create mode 100644 src/assets/btn_pinglun_hover.png create mode 100644 src/assets/btn_pinglun_nor.png create mode 100644 src/assets/btn_shuaxin@2x.png create mode 100644 src/assets/btn_tuijian_nor.png create mode 100644 src/assets/btn_zan_nor@3x.png create mode 100644 src/assets/btn_zhiding_nor.png create mode 100644 src/assets/default/404@2x.png create mode 100644 src/assets/default/500@2x.png create mode 100644 src/assets/default/duanwang@2x.png create mode 100644 src/assets/default/noAuthority@2x.png create mode 100644 src/assets/default/wuwang@2x.png create mode 100644 src/assets/default/zwnr@2x.png create mode 100644 src/assets/goBack.png create mode 100644 src/assets/head@3x.png create mode 100644 src/assets/icon-fangda.svg create mode 100644 src/assets/icon-shangjia1.png create mode 100644 src/assets/icon-shangjia2.png create mode 100644 src/assets/icon-shangjia3.png create mode 100644 src/assets/icon-shangjia4.png create mode 100644 src/assets/icon-shangjia5.png create mode 100644 src/assets/icon-shangjia6.png create mode 100644 src/assets/icon-ztsx-hover.svg create mode 100644 src/assets/icon-ztsx.svg create mode 100644 src/assets/icon_beizhu@2x.png create mode 100644 src/assets/icon_beizhu_sel@2x.png create mode 100644 src/assets/icon_dingdan.svg create mode 100644 src/assets/icon_fuwu.svg create mode 100644 src/assets/icon_kehu.svg create mode 100644 src/assets/icon_linjin@2x.png create mode 100644 src/assets/icon_menu_tongzhi@2x.png create mode 100644 src/assets/icon_qiye.svg create mode 100644 src/assets/icon_quyu.svg create mode 100644 src/assets/icon_renyuan.svg create mode 100644 src/assets/icon_team_guanbi.png create mode 100644 src/assets/icon_team_guanbi2.png create mode 100644 src/assets/icon_zhuyi@2x.png create mode 100644 src/assets/img_denglu-bg@2x.png create mode 100644 src/assets/logBlackTem.png create mode 100644 src/assets/logBlackTemFull.png create mode 100644 src/assets/logo-full.svg create mode 100644 src/assets/logo.svg create mode 100644 src/assets/logoBlackTem.svg create mode 100644 src/assets/noSecondMenu-menu-headPic.png create mode 100644 src/assets/noSecondMenu-menu-hover.png create mode 100644 src/assets/pic-biaoyu.png create mode 100644 src/assets/pic-biaoyu@2x.png create mode 100644 src/assets/pic-touxiang@2x(1).png create mode 100644 src/assets/pic-touxiang@2x.png create mode 100644 src/assets/test-img/Shape.svg create mode 100644 src/assets/test-img/Shapehover.svg create mode 100644 src/assets/test-img/assets-empty.svg create mode 100644 src/assets/test-img/assets-logo-full.svg create mode 100644 src/assets/test-img/assets-result-403.svg create mode 100644 src/assets/test-img/assets-result-404.svg create mode 100644 src/assets/test-img/assets-result-500.svg create mode 100644 src/assets/test-img/assets-result-ie.svg create mode 100644 src/assets/test-img/assets-result-maintenance.svg create mode 100644 src/assets/test-img/assets-result-wifi.svg create mode 100644 src/assets/test-img/assets-slide-logout.svg create mode 100644 src/assets/test-img/assets-t-logo.svg create mode 100644 src/assets/test-img/background-login.png create mode 100644 src/assets/test-img/bj2.png create mode 100644 src/assets/test-img/btn_kaiguan.svg create mode 100644 src/assets/test-img/btn_quit.svg create mode 100644 src/assets/test-img/cutter@2x.png create mode 100644 src/assets/test-img/delete-active.png create mode 100644 src/assets/test-img/delete-hover.png create mode 100644 src/assets/test-img/delete.png create mode 100644 src/assets/test-img/dh-bottom.png create mode 100644 src/assets/test-img/dh-top.png create mode 100644 src/assets/test-img/icon_ddgl_nor.svg create mode 100644 src/assets/test-img/icon_fwry_nor.svg create mode 100644 src/assets/test-img/icon_jggl_nor.svg create mode 100644 src/assets/test-img/icon_khgl_nor.svg create mode 100644 src/assets/test-img/icon_menu_cheliang.svg create mode 100644 src/assets/test-img/icon_menu_diaodu.svg create mode 100644 src/assets/test-img/icon_menu_grzx.svg create mode 100644 src/assets/test-img/icon_menu_service.svg create mode 100644 src/assets/test-img/icon_menu_shuju.svg create mode 100644 src/assets/test-img/icon_menu_zhuye.svg create mode 100644 src/assets/test-img/icon_menu_zj.svg create mode 100644 src/assets/test-img/icon_more.png create mode 100644 src/assets/test-img/icon_more@3x.png create mode 100644 src/assets/test-img/icon_pjgl_nor.svg create mode 100644 src/assets/test-img/icon_xq.svg create mode 100644 src/assets/test-img/img_mobile@2x.png create mode 100644 src/assets/test-img/jia.png create mode 100644 src/assets/test-img/jia2.png create mode 100644 src/assets/test-img/jian.png create mode 100644 src/assets/test-img/jian2.png create mode 100644 src/assets/test-img/logo.png create mode 100644 src/assets/test-img/logofull.png create mode 100644 src/assets/test-img/modify-anxia.png create mode 100644 src/assets/test-img/modify-hover.png create mode 100644 src/assets/test-img/modify.png create mode 100644 src/assets/test-img/pic-touxiang.png create mode 100644 src/assets/test-img/tx.png create mode 100644 src/assets/touxiang.png create mode 100644 src/assets/upload.svg create mode 100644 src/assets/xiaohouzi@2x.png create mode 100644 src/components/Confirm/index.vue create mode 100644 src/components/Delete/index.vue create mode 100644 src/components/ImageMagnify/index.vue create mode 100644 src/components/Message/ProdDisabled.vue create mode 100644 src/components/Message/Success.vue create mode 100644 src/components/editDialog/index.vue create mode 100644 src/components/expBall/ExpBall.vue create mode 100644 src/components/noData/index.vue create mode 100644 src/components/product-card/index.vue create mode 100644 src/components/result/index.vue create mode 100644 src/components/switchBar/switchBar.vue create mode 100644 src/components/switchBar/switchBarindex.vue create mode 100644 src/components/switchBar/switchBartop.vue create mode 100644 src/components/switchBar/type.ts create mode 100644 src/components/thumbnail/index.vue create mode 100644 src/components/trend/index.vue create mode 100644 src/config/configuration.ts create mode 100644 src/config/global.ts create mode 100644 src/config/proxy.ts create mode 100644 src/config/style.ts create mode 100644 src/constants/index.ts create mode 100644 src/czriComponents/index.less create mode 100644 src/hooks/event/useWindowSizeFn.ts create mode 100644 src/hooks/index.ts create mode 100644 src/layouts/components/Breadcrumb.vue create mode 100644 src/layouts/components/Content.vue create mode 100644 src/layouts/components/EaseRequest.vue create mode 100644 src/layouts/components/Footer.vue create mode 100644 src/layouts/components/LayoutContentSide.vue create mode 100644 src/layouts/components/LayoutSideNav.vue create mode 100644 src/layouts/components/LogInfo.vue create mode 100644 src/layouts/components/Notice.vue create mode 100644 src/layouts/components/Search.vue create mode 100644 src/layouts/index.vue create mode 100644 src/layouts/simpleComponents/MenuContent.vue create mode 100644 src/layouts/simpleComponents/SideNav.vue create mode 100644 src/main.ts create mode 100644 src/pages/coupon/couponList/addCoupon.vue create mode 100644 src/pages/coupon/couponList/components/SearchForm.vue create mode 100644 src/pages/coupon/couponList/components/TableList.vue create mode 100644 src/pages/coupon/couponList/components/assignDialog.vue create mode 100644 src/pages/coupon/couponList/constants.ts create mode 100644 src/pages/coupon/couponList/index.vue create mode 100644 src/pages/coupon/index.less create mode 100644 src/pages/custom/index.less create mode 100644 src/pages/custom/management/components/SearchForm.vue create mode 100644 src/pages/custom/management/components/TableList.vue create mode 100644 src/pages/custom/management/constants.ts create mode 100644 src/pages/custom/management/index.vue create mode 100644 src/pages/dashboard/base/components/MiddleChart.vue create mode 100644 src/pages/dashboard/base/components/OutputOverview.vue create mode 100644 src/pages/dashboard/base/components/TopPanel.vue create mode 100644 src/pages/dashboard/base/components/operate.vue create mode 100644 src/pages/dashboard/base/constants.ts create mode 100644 src/pages/dashboard/base/index.less create mode 100644 src/pages/dashboard/base/index.ts create mode 100644 src/pages/dashboard/base/index.vue create mode 100644 src/pages/dashboard/base/type.ts create mode 100644 src/pages/default/404.vue create mode 100644 src/pages/default/forbidden.vue create mode 100644 src/pages/default/netWorkAnomaly.vue create mode 100644 src/pages/default/netWorkDisconnection.vue create mode 100644 src/pages/default/serviceError.vue create mode 100644 src/pages/institution/authentication/components/ApplyDialog.vue create mode 100644 src/pages/institution/authentication/components/DialogForm.vue create mode 100644 src/pages/institution/authentication/components/SearchForm.vue create mode 100644 src/pages/institution/authentication/components/TableList.vue create mode 100644 src/pages/institution/authentication/constants.ts create mode 100644 src/pages/institution/authentication/index.vue create mode 100644 src/pages/institution/index.less create mode 100644 src/pages/institution/information/components/DialogForm.vue create mode 100644 src/pages/institution/information/components/SearchForm.vue create mode 100644 src/pages/institution/information/components/TableList.vue create mode 100644 src/pages/institution/information/constants.ts create mode 100644 src/pages/institution/information/index.vue create mode 100644 src/pages/institution/information/informationDetail.vue create mode 100644 src/pages/login/components/Login.vue create mode 100644 src/pages/login/components/Register.vue create mode 100644 src/pages/login/index.less create mode 100644 src/pages/login/index.vue create mode 100644 src/pages/order/dispatchList/components/DialogForm.vue create mode 100644 src/pages/order/dispatchList/components/SearchForm.vue create mode 100644 src/pages/order/dispatchList/components/TableList.vue create mode 100644 src/pages/order/dispatchList/components/assignDialog.vue create mode 100644 src/pages/order/dispatchList/constants.ts create mode 100644 src/pages/order/dispatchList/index.vue create mode 100644 src/pages/order/historyList/components/DialogForm.vue create mode 100644 src/pages/order/historyList/components/SearchForm.vue create mode 100644 src/pages/order/historyList/components/TableList.vue create mode 100644 src/pages/order/historyList/constants.ts create mode 100644 src/pages/order/historyList/index.vue create mode 100644 src/pages/order/historyList/orderDetail.vue create mode 100644 src/pages/order/index.less create mode 100644 src/pages/order/orderList/components/DialogForm.vue create mode 100644 src/pages/order/orderList/components/SearchForm.vue create mode 100644 src/pages/order/orderList/components/TableList.vue create mode 100644 src/pages/order/orderList/constants.ts create mode 100644 src/pages/order/orderList/index.vue create mode 100644 src/pages/order/orderList/orderDetail.vue create mode 100644 src/pages/order/refundList/components/DialogForm.vue create mode 100644 src/pages/order/refundList/components/SearchForm.vue create mode 100644 src/pages/order/refundList/components/TableList.vue create mode 100644 src/pages/order/refundList/components/detailDialog.vue create mode 100644 src/pages/order/refundList/constants.ts create mode 100644 src/pages/order/refundList/index.vue create mode 100644 src/pages/personnel/authentication/components/ApplyDialog.vue create mode 100644 src/pages/personnel/authentication/components/DialogForm.vue create mode 100644 src/pages/personnel/authentication/components/SearchForm.vue create mode 100644 src/pages/personnel/authentication/components/TableList.vue create mode 100644 src/pages/personnel/authentication/constants.ts create mode 100644 src/pages/personnel/authentication/index.vue create mode 100644 src/pages/personnel/index.less create mode 100644 src/pages/personnel/information/components/DialogForm.vue create mode 100644 src/pages/personnel/information/components/SearchForm.vue create mode 100644 src/pages/personnel/information/components/TableList.vue create mode 100644 src/pages/personnel/information/constants.ts create mode 100644 src/pages/personnel/information/index.vue create mode 100644 src/pages/personnel/information/informationDetail.vue create mode 100644 src/pages/reply/index.less create mode 100644 src/pages/reply/order/components/SearchForm.vue create mode 100644 src/pages/reply/order/components/TableList.vue create mode 100644 src/pages/reply/order/constants.ts create mode 100644 src/pages/reply/order/detail.vue create mode 100644 src/pages/reply/order/index.less create mode 100644 src/pages/reply/order/index.vue create mode 100644 src/pages/reply/order/objectDetail.vue create mode 100644 src/pages/reply/order/type.ts create mode 100644 src/pages/service/index.less create mode 100644 src/pages/service/region/city.ts create mode 100644 src/pages/service/region/components/DialogForm.vue create mode 100644 src/pages/service/region/components/TableList.vue create mode 100644 src/pages/service/region/components/addServiceDialog.vue create mode 100644 src/pages/service/region/components/regionTableList.vue create mode 100644 src/pages/service/region/components/ruleDialog.vue create mode 100644 src/pages/service/region/constants.ts create mode 100644 src/pages/service/region/editRegion.vue create mode 100644 src/pages/service/region/index.vue create mode 100644 src/pages/service/region/model.ts create mode 100644 src/pages/service/region/setBusiness.vue create mode 100644 src/pages/service/service/addService.vue create mode 100644 src/pages/service/service/components/SearchForm.vue create mode 100644 src/pages/service/service/components/TableList.vue create mode 100644 src/pages/service/service/components/previewPopup.vue create mode 100644 src/pages/service/service/constants.ts create mode 100644 src/pages/service/service/index.vue create mode 100644 src/pages/service/serviceType/components/DialogForm.vue create mode 100644 src/pages/service/serviceType/components/SearchForm.vue create mode 100644 src/pages/service/serviceType/components/TableList.vue create mode 100644 src/pages/service/serviceType/constants.ts create mode 100644 src/pages/service/serviceType/index.vue create mode 100644 src/pages/service/serviceType/type.ts create mode 100644 src/permission.ts create mode 100644 src/router/index.ts create mode 100644 src/router/modules/base.ts create mode 100644 src/router/modules/components.ts create mode 100644 src/router/modules/others.ts create mode 100644 src/store/index.ts create mode 100644 src/store/modules/notification.ts create mode 100644 src/store/modules/permission.ts create mode 100644 src/store/modules/setting.ts create mode 100644 src/store/modules/tabs-router.ts create mode 100644 src/store/modules/user.ts create mode 100644 src/style/componentsReast/index.less create mode 100644 src/style/componentsReast/reset.less create mode 100644 src/style/font-family.less create mode 100644 src/style/index.less create mode 100644 src/style/normal.less create mode 100644 src/style/theme/default.less create mode 100644 src/style/theme/index.less create mode 100644 src/style/variables.less create mode 100644 src/types/axios.d.ts create mode 100644 src/types/globals.d.ts create mode 100644 src/types/interface.d.ts create mode 100644 src/utils/charts.ts create mode 100644 src/utils/color.ts create mode 100644 src/utils/commonData.ts create mode 100644 src/utils/date.ts create mode 100644 src/utils/emoji/index.ts create mode 100644 src/utils/index.ts create mode 100644 src/utils/request/Axios.ts create mode 100644 src/utils/request/AxiosCancel.ts create mode 100644 src/utils/request/AxiosTransform.ts create mode 100644 src/utils/request/index.ts create mode 100644 src/utils/request/utils.ts create mode 100644 src/utils/validate.ts create mode 100644 src/vite-env.d.ts create mode 100644 stylelint.config.js create mode 100644 tsconfig.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..4fc13c7 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,14 @@ +root = true + +[*] +indent_style = space +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false + +[*.{ts,js,vue,css}] +indent_size = 2 diff --git a/.env b/.env new file mode 100644 index 0000000..7e878e0 --- /dev/null +++ b/.env @@ -0,0 +1,3 @@ +VITE_SOME_KEY=123 +# 打包路径 根据项目不同按需配置 +VITE_BASE_URL = ./ \ No newline at end of file diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..afed627 --- /dev/null +++ b/.env.development @@ -0,0 +1,3 @@ +VITE_SOME_KEY=456 +# 打包路径 +VITE_BASE_URL = ./ diff --git a/.env.test b/.env.test new file mode 100644 index 0000000..7d4202a --- /dev/null +++ b/.env.test @@ -0,0 +1,3 @@ +VITE_SOME_KEY=789 +# 打包路径 +VITE_BASE_URL = ./ diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..66eb01a --- /dev/null +++ b/.eslintignore @@ -0,0 +1,14 @@ +snapshot* +dist +lib +es +esm +node_modules +src/_common +static +cypress +script/test/cypress +_site +temp* +static/ +!.prettierrc.js \ No newline at end of file diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..452e237 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,117 @@ +{ + "extends": [ + "plugin:@typescript-eslint/recommended", + "eslint-config-airbnb-base", + "@vue/typescript/recommended", + "plugin:vue/vue3-recommended", + "plugin:vue-scoped-css/base", + "plugin:prettier/recommended" + ], + "env": { + // 浏览器全局变量 + "browser": true, + "node": true, + "jest": true, + // 启用 ES6 语法支持以及新的 ES6 全局变量或类型 + "es6": true + }, + "globals": { + "defineProps": "readonly", + "defineEmits": "readonly" + }, + "plugins": ["vue", "@typescript-eslint"], + "parserOptions": { + // parser指定解析器,默认的为espree。babel-eslint是一个Babel parser的包装器,这个包装器使得 Babel parser 可以和 ESLint 协调工作 + "parser": "@typescript-eslint/parser", + // 指定来源的类型,'script' (默认) 或 'module'(如果你的代码是 ECMAScript 模块) + "sourceType": "module" + // "allowImportExportEverywhere": true, + // "ecmaFeatures": { + // "jsx": true + // } + }, + "settings": { + "import/extensions": [".js", ".jsx", ".ts", ".tsx"] + }, + "rules": { + "no-console": "off", + "no-continue": "off", + "no-restricted-syntax": "off", + "no-plusplus": "off", + "no-param-reassign": "off", + "no-shadow": "off", + "guard-for-in": "off", + + "import/extensions": "off", + "import/no-unresolved": "off", + "import/no-extraneous-dependencies": "off", + "import/prefer-default-export": "off", + "import/first": "off", // https://github.com/vuejs/vue-eslint-parser/issues/58 + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", + "vue/first-attribute-linebreak": 0, + + "@typescript-eslint/no-unused-vars": [ + "error", + { + "argsIgnorePattern": "^_", + "varsIgnorePattern": "^_" + } + ], + "no-unused-vars": [ + "error", + { + "argsIgnorePattern": "^_", + "varsIgnorePattern": "^_" + } + ], + "no-use-before-define": "off", + "@typescript-eslint/no-use-before-define": "off", + "@typescript-eslint/ban-ts-comment": "off", + "@typescript-eslint/ban-types": "off", + "class-methods-use-this": "off" // 因为AxiosCancel必须实例化而能静态化所以加的规则,如果有办法解决可以取消 + }, + "overrides": [ + { + "files": ["*.vue"], + "rules": { + // "vue/component-name-in-template-casing": [2, "kebab-case"],//模板中是否将组件名称强制转化成横杠连接的命名 + "vue/require-default-prop": 0, + "vue/multi-word-component-names": 0, + "vue/no-reserved-props": 0, + "vue/no-v-html": 0, + "vue-scoped-css/enforce-style-type": ["error", { "allows": ["scoped"] }], + } + }, + { + "files": ["*.ts", "*.tsx"], // https://github.com/typescript-eslint eslint-recommended + "rules": { + "constructor-super": "off", // ts(2335) & ts(2377) + "getter-return": "off", // ts(2378) + "no-const-assign": "off", // ts(2588) + // 禁止function定义中出现重名参数 + "no-dupe-args": "off", // ts(2300) + "no-dupe-class-members": "off", // ts(2393) & ts(2300) + "no-dupe-keys": "off", // ts(1117) + "no-func-assign": "off", // ts(2539) + "no-import-assign": "off", // ts(2539) & ts(2540) + "no-new-symbol": "off", // ts(2588) + "no-obj-calls": "off", // ts(2349) + "no-redeclare": "off", // ts(2451) + "no-setter-return": "off", // ts(2408) + "no-this-before-super": "off", // ts(2376) + "no-undef": "off", // ts(2304) + //禁止在return、throw、continue、break语句之后出现不可达代码 + "no-unreachable": "off", // ts(7027) + "no-unsafe-negation": "off", // ts(2365) & ts(2360) & ts(2358) + "no-var": "error", // ts transpiles let/const to var, so no need for vars any more + "prefer-const": "error", // ts provides better types with const + "prefer-rest-params": "error", // ts provides better types with rest args over arguments + "prefer-spread": "error", // ts transpiles spread to apply, so no need for manual apply + "valid-typeof": "off", // ts(2367) + "vue/v-on-event-hyphenation":"off", // 事件名中横线 + "vue/no-dupe-keys":"true" // 禁止出现重复的属性 + } + } + ] +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..4f369c9 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,29 @@ +stages: + - build + - docs +build: + stage: build + tags: + - aliyun-kubernetes + script: + - node -v + - npm -v + - npm install --registry=http://registry.npm.taobao.org + + # - sudo rm -rf /data/nginx/html/${CI_PROJECT_NAME}/* + # - sudo cp -rf ./dist/* /data/nginx/html/${CI_PROJECT_NAME}/ + # - sudo chown nginx.nginx -R /data/nginx/html/${CI_PROJECT_NAME} + only: + - master + +# docs: +# stage: docs +# tags: +# - aliyun-kubernetes +# script: +# - sudo rm -rf /data/nginx/html/${CI_PROJECT_NAME}-docs/* +# - sudo cp -rf ./docs/* /data/nginx/html/${CI_PROJECT_NAME}-docs/ +# - sudo chown nginx.nginx -R /data/nginx/html/${CI_PROJECT_NAME}-docs +# only: +# - master + diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..d4fb4ca --- /dev/null +++ b/.prettierrc @@ -0,0 +1,10 @@ +{ + "spaceBeforeFunctionParen": true, + "tabWidth": 2, + "useTabs": false, + "trailingComma": "none", + "eslintIntegration": true, + "singleQuote": true, + "semi": false, + "endOfLine": "auto" +} \ No newline at end of file diff --git a/.stylelintignore b/.stylelintignore new file mode 100644 index 0000000..1b7da3c --- /dev/null +++ b/.stylelintignore @@ -0,0 +1,8 @@ +# .stylelintignore +# 旧的不需打包的样式库 +*.min.css + +# 其他类型文件 +*.js +*.jpg +*.woff diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4b3d5b4 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM nginx +LABEL maintainer="信息中心研发组 " + +COPY ./dist/ /usr/share/nginx/html/ +RUN chmod -R 777 /usr/share/nginx/html/ + +RUN chmod -R 777 /etc/nginx/conf.d/default.conf +COPY ./default.conf /etc/nginx/conf.d/ + +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..68bd268 --- /dev/null +++ b/README.md @@ -0,0 +1,186 @@ +# 云岚到家-机构端 +#### 项目简介 +> 当代人们的生活节奏越来越快,很多人因为工作和其他事情没有时间去处理家务事,因此需要家政服务来帮助他们解决日常生活中的问题。云岚到家家政项目是一种在线服务,将家政服务与互联网技术相结合,为用户提供更加便捷的家政服务。 + +项目迭代日志: +23年3月30 - 合并更新 处理无法合并问题 +#### 研发规范遵循: + +- 主体使用驼峰命名 +- 公共样式使用 - 连接命名 +- 内部样式 驼峰命名 +- 页面命名 使用小写开头的驼峰命名 +- 组件使用大写开头命名 + +#### 产品原型及设计 +- 设计稿: https://codesign.qq.com/app/design/P4VlZMr6dzjq6wL/board?team_id=6dqN292MdajaBXe +- 产品原型: https://codesign.qq.com/app/prototype/a4Jd0NaP739AMkb/detail + +#### 运行环境 - 初始开发环境及工具 + +- 项目开发环境: win10 + node: v16.19.0 + npm: 8.12.1 || pnpm: 6.32.8 + +#### 访问地址 + + +#### 技术栈应用 +Vue 3 + TypeScript +Tdesign + Vite + pinia +#### 项目结构 +```html +├── commitlint.config.js - commintlint 规范 +├── docker - docker 部署配置文件 +│ └── nginx.conf - 若开启 browerhistroy 可参考配置 +├── docs - 项目展示图 - 首页截图 +├── globals.d.ts - 通用声明文件 +├── index.html - 主 html 文件 +├── mock - mock 目录 +│ └── index.ts +├── node_modules - 项目依赖 +├── package-lock.json +├── package.json +├── public - 公用资源文件 +│ └── favicon.ico +├── shims-vue.d.ts +├── src - 页面代码 +│ ├── api 请求相关 +│ ├── assets 公共资源 +│ │ ├── images 图片资源 +│ ├── api - 接口 +│ ├── components - 公用组件 +│ │ ├── Delete - 删除弹层:只需从父组件传删除的内容提示 +│ │ ├── Confirm - 确认弹层:只需从父组件传确认的内容提示 +│ │ ├── expBall - 展示版本更新内容的小球球 +│ │ ├── ImageMagnify - 查看图片弹层 +│ │ ├── NoData - 无数据的空页面形式 +│ │ ├── product-card - 产品卡片 +│ │ ├── result - 结果 +│ │ ├── editDialog - 编辑弹窗 +│ │ ├── thumbnail - 缩略图 +│ │ ├── trend - 趋势图 +│ │ ├── Message - 提示弹层 +│ │ │ ├──Success - 成功通知弹窗 +│ │ │ ├──ProdDisabled - 禁用提示弹窗 +│ │ ├── switchBar - tab切换 +│ │ │ ├──switchBar - tab切换 +│ │ │ ├──switchBarindex - 首页tab切换 +│ │ │ ├──switchBartop - 线条tab +│ ├── czriComponents - 组件包:常用,但是原有组件库实现不了,因此进行了二次开发 +│ │ ├──index.less - 组件包样式 +│ ├── layouts - 页面架构 +│ │ ├──components - 页面架构公共组件 +│ │ │ ├──Breadcrumb - 面包屑 +│ │ │ ├──Content - 内置组件,避免重复渲染DOM +│ │ │ ├──Footer - 底部公司名称 +│ │ │ ├──LayoutContentSide - 侧边栏 +│ │ │ ├──LayoutHeader - 侧边栏头部 +│ │ │ ├──Loginfo - 侧边栏退出区域 +│ │ │ ├──Notice - 通知中心,弃用 +│ │ │ ├──Search - 搜索功能 +│ │ ├──simpleComponents - 框架公用内容 +│ │ │ ├──MenuContent - 简版布局 +│ │ │ ├──SideNav - 列表菜单 +│ │──index.vue - 框架布局 +│ │──setting.vue = 设置框架风格 +│ ├── config - 项目配置 +│ │ ├──configuration - 配置项目地址和api +│ │ ├──global - 配重全局内容 +│ │ ├──proxy.ts - 代理样式 +│ │ ├──style.ts - 配置全局样式风格 +│ ├── pages - 页面展示目录 +│ │ ├──dashboard - 首页,工作台 +│ │ ├──coupon - 优惠券管理页 +│ │ │ ├──addCoupon - 新增,编辑优惠券 +│ │ │ ├──index - 列表页 +│ │ ├──coupon - 客户管理页 +│ │ ├──default - 公共缺省页 +│ │ ├──institution - 企业管理 +│ │ │ ├──authentication - 企业认证管理 +│ │ │ ├──information - 企业信息管理 +│ │ ├──personnel - 服务人员管理 +│ │ │ ├──authentication - 服务人员认证管理 +│ │ │ ├──information - 服务人员信息管理 +│ │ ├──order - 订单管理 +│ │ │ ├──dispatchList - 派单列表(已废弃) +│ │ │ ├──historyList - 历史订单列表 +│ │ │ │ ├──orderDetail - 历史订单详情 +│ │ │ │ ├──index - 列表页 +│ │ │ ├──refundList - 退款订单列表(已废弃) +│ │ │ ├──orderList - 订单列表 +│ │ │ │ ├──orderDetail - 历史订单详情 +│ │ │ │ ├──index - 列表页 +│ │ ├──reply - 原评价页面,现修改解决方案,已废弃 +│ │ ├──service - 服务管理 +│ │ │ ├──serviceType - 服务类型管理 +│ │ │ ├──service - 服务项管理 +│ │ │ │ ├──index - 服务项列表 +│ │ │ │ ├──addService - 新增,编辑服务项 +│ │ │ ├──region - 区域管理 +│ │ │ │ ├──editRegion - 设置服务 +│ │ │ │ ├──index - 区域列表 +│ │ │ │ ├──setBusiness - 调度配置 +│ │ ├──login - 登录页 +│ │ ├──user - 个人中心 +│ ├── router - 定义路由页面 +│ ├── style - 样式 +│ │ ├──componentsReast - 组件重置、全局样式 +│ │ ├──theme - 全局颜色值、公用样式 +│ │ index.less - 样式总入口 +│ │ normal.less - 普通框架样式 +│ │ noSecondMenu.less - 普通框架简化版样式 +│ │ top.less - 上左右布局 +│ ├── utils 封装工具目录 +│ ├── main.ts - 项目入口文件 +│ ├── permission.ts - 路有权限控制 +├── tsconfig.json - ts配置文件 +├── README.md - 说明文档 +└── vite.config.js - vite 配置文件 +``` +#### 安装运行 + +``` bash +## 安装依赖 +npm install || yarn +##或 +cnpm install || yarn +## 启动项目 + +# 启动 +npm run dev +# 启动链接测试环境 +npm run start + +## 构建正式环境 - 打包 +npm run build + +``` +#### 插件 +nprogress 进度条 + +viteMockServe vite 的数据模拟插件 + +vueJsx +> 使用jsx 语法 jsx语法可以更好地跟Typescript结合 在阅读UI框架源码时,发现在知名UI组件库Ant Design Vue跟Naive UI皆使用tsx语法开发 +vite-svg-loader + + + +#### 参考 + +vite +vue3 +pinia 中文文档 :类vuex +vue-router +Tdesign +Tdesign-cli + +tsconfig.json配置 +#### 文档 +tsconfig.json 配置整理 +vite.config.js vite配置文件 + +src/config/proxy.ts 后端地址配置, + +​ release:生成环境下的后端地址,使用npm run build有效 , + +vite.config.ts:配置npm run dev的代理地址 + diff --git a/assets/svg/assets-t-logo.svg b/assets/svg/assets-t-logo.svg new file mode 100644 index 0000000..af57f94 --- /dev/null +++ b/assets/svg/assets-t-logo.svg @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svg/icon-ztsx 2.svg b/assets/svg/icon-ztsx 2.svg new file mode 100644 index 0000000..78f6e9a --- /dev/null +++ b/assets/svg/icon-ztsx 2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/svg/img_logo.svg b/assets/svg/img_logo.svg new file mode 100644 index 0000000..350db17 --- /dev/null +++ b/assets/svg/img_logo.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/commitlint.config.js b/commitlint.config.js new file mode 100644 index 0000000..405e185 --- /dev/null +++ b/commitlint.config.js @@ -0,0 +1,2 @@ +// commit-lint config +module.exports = { extends: ['@commitlint/config-conventional'] }; diff --git a/default.conf b/default.conf new file mode 100644 index 0000000..3745acd --- /dev/null +++ b/default.conf @@ -0,0 +1,52 @@ +server { + listen 80; + listen [::]:80; + server_name jzo2o-operation-test.itheima.net; + client_body_timeout 10m; + client_max_body_size 30m; + #charset koi8-r; + #access_log /var/log/nginx/host.access.log main; + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + + location /api/ { + proxy_pass https://jzo2o-api-test.itheima.net/; + client_body_timeout 10m; + } + + #error_page 404 /404.html; + + # redirect server error pages to the static page /50x.html + # + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } + + # proxy the PHP scripts to Apache listening on 127.0.0.1:80 + # + #location ~ \.php$ { + # proxy_pass http://127.0.0.1; + #} + + # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 + # + #location ~ \.php$ { + # root html; + # fastcgi_pass 127.0.0.1:9000; + # fastcgi_index index.php; + # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; + # include fastcgi_params; + #} + + # deny access to .htaccess files, if Apache's document root + # concurs with nginx's one + # + #location ~ /\.ht { + # deny all; + #} +} \ No newline at end of file diff --git a/docs/_media/icon.png b/docs/_media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e42f02eb2448edaefc7d199282a2f5328abca4b9 GIT binary patch literal 10117 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 + + + diff --git a/docs/_media/image-20230310155201062.png b/docs/_media/image-20230310155201062.png new file mode 100644 index 0000000000000000000000000000000000000000..4a0d0e61b1070fa59b9658855645f0507d7a4daa GIT binary patch literal 276676 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
    luGbxvtqUoX~M;HaP`VMeuJr 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