diff --git a/src/api/Boat/info.ts b/src/api/Boat/info.ts index 465f11e..885a4b3 100644 --- a/src/api/Boat/info.ts +++ b/src/api/Boat/info.ts @@ -83,10 +83,14 @@ export function getSailScheduleImportAPI(data: { file: File }) { * @param {BoatInfoPageType} data 分页信息 * @return 返回请求分页列表接口的结果 */ -export function getSailScheduleExportAPI(data: Partial) { - return http.get(api.sailScheduleExport, data, { - responseType: 'arraybuffer', - }); +export function getSailScheduleExportAPI() { + return http.get( + api.sailScheduleExport, + {}, + { + responseType: 'arraybuffer', + } + ); } /** diff --git a/src/assets/icons/FileDown.svg b/src/assets/icons/FileDown.svg new file mode 100644 index 0000000..e7dfa27 --- /dev/null +++ b/src/assets/icons/FileDown.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/config/permission.ts b/src/config/permission.ts index 5ac99e3..3dc31fc 100644 --- a/src/config/permission.ts +++ b/src/config/permission.ts @@ -35,8 +35,12 @@ router.beforeEach(async (to, _, next) => { // 如果已登录,重定向到主页 next({ path: '/' }); } else { - // 如果不传参数就会重新执行路由拦截,重新进到这里 - next(); + try { + // 如果不传参数就会重新执行路由拦截,重新进到这里 + next(); + } catch (error) { + next(`/login?redirect=${to.path}`); + } } } else { // 用户未登录 diff --git a/src/layouts/Main/index.vue b/src/layouts/Main/index.vue index f68d040..51b87b4 100644 --- a/src/layouts/Main/index.vue +++ b/src/layouts/Main/index.vue @@ -2,7 +2,9 @@
- +
+ +
diff --git a/src/layouts/Sidebar/index.vue b/src/layouts/Sidebar/index.vue index 233725e..5a5a431 100644 --- a/src/layouts/Sidebar/index.vue +++ b/src/layouts/Sidebar/index.vue @@ -36,14 +36,9 @@ interface menuListType { const menuList = ref([ { path: '/boat', - title: '船舶信息', + title: '船货信息', icon: 'BoatInfo', }, - { - path: '/manifest', - title: '舱单信息', - icon: 'ManifestInfo', - }, { path: '/send', title: '发布信息', diff --git a/src/router/index.ts b/src/router/index.ts index 84065c1..43e5dd4 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -89,12 +89,12 @@ export const constantRoutes: Array = [ title: '船舶信息', }, }, - { - path: '/manifest', - name: 'Manifest', - component: () => import('@/views/Manifest/index.vue'), - meta: { title: '舱单信息' }, - }, + // { + // path: '/manifest', + // name: 'Manifest', + // component: () => import('@/views/Manifest/index.vue'), + // meta: { title: '舱单信息' }, + // }, { path: '/send', name: 'sendInfo', @@ -119,6 +119,11 @@ export const constantRoutes: Array = [ }, ], }, + { + path: '/:pathMatch(.*)*', + name: 'notFound', + redirect: '/404', + }, ]; /** diff --git a/src/styles/index.scss b/src/styles/index.scss index 6861d92..062977d 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -1,5 +1,6 @@ @import './variables.scss'; -@import './reset.scss'; + +// @import './reset.scss'; @import './theme/theme-default.scss'; @import './theme/theme-dark.scss'; @import './transition.scss'; @@ -25,6 +26,7 @@ html { height: 100%; } body { + margin: 0; background: #f0f2f5; } #app { diff --git a/src/views/Boat/components/BoatAddress.vue b/src/views/Boat/components/BoatAddress.vue new file mode 100644 index 0000000..d2e86f8 --- /dev/null +++ b/src/views/Boat/components/BoatAddress.vue @@ -0,0 +1,221 @@ + + + + + diff --git a/src/views/Boat/components/BoatDialog.vue b/src/views/Boat/components/BoatDialog.vue index 42bc1e8..494e2e3 100644 --- a/src/views/Boat/components/BoatDialog.vue +++ b/src/views/Boat/components/BoatDialog.vue @@ -1,50 +1,50 @@ @@ -123,19 +120,23 @@ const { userInfo } = storeToRefs(userState); .content-left { width: 319px; height: 342px; - font-size: 21px; - font-weight: 400; - color: #333; - .item { - display: flex; + .right-info { width: 100%; - line-height: 38px; - .title { - width: 147px; - } - .text { - flex: 1; - color: #027db4; + height: 342px; + font-weight: 400; + color: #333; + .item { + display: flex; + width: 100%; + font-size: 18px; + line-height: 38px; + .title { + width: 147px; + } + .text { + flex: 1; + color: #027db4; + } } } } @@ -145,33 +146,12 @@ const { userInfo } = storeToRefs(userState); justify-content: space-between; width: 238px; height: 342px; - - // margin-left: 160px; - .btn-img { - width: 120px; - height: 40px; - font-size: 15px; - line-height: 40px; - color: #fff; - text-align: center; - background-color: rgb(0 128 128 / 100%); - border-radius: 5px; - } - .btn-address { - width: 120px; - height: 40px; - font-size: 15px; - line-height: 40px; - color: #fff; - text-align: center; - background-color: rgb(22 155 213 / 100%); - border-radius: 5px; - } .info { box-sizing: border-box; width: 238px; height: 180px; padding: 15px 20px; + margin-bottom: 10px; font-family: 'Arial Normal', Arial; font-size: 15px; font-style: normal; @@ -193,26 +173,26 @@ const { userInfo } = storeToRefs(userState); } } } - } -} -.footer { - box-sizing: border-box; - display: flex; - align-items: center; - justify-content: center; - width: 100%; - padding-bottom: 40px; - background-color: #fff; - .btn { - width: 170px; - height: 55px; - font-size: 18px; - line-height: 55px; - color: #fff; - text-align: center; - background-color: #027db4; - border-radius: 5px; - box-shadow: 5px 5px 5px rgb(0 0 0 / 34.9%); + .footer { + box-sizing: border-box; + display: flex; + align-items: center; + justify-content: center; + width: 100%; + padding: 40px 0 0; + background-color: #fff; + .btn { + width: 170px; + height: 45px; + font-size: 18px; + line-height: 45px; + color: #fff; + text-align: center; + background-color: #027db4; + border-radius: 5px; + box-shadow: 5px 5px 5px rgb(0 0 0 / 34.9%); + } + } } } diff --git a/src/views/Boat/components/BoatTable.vue b/src/views/Boat/components/BoatTable.vue index c5dc436..fa4dc36 100644 --- a/src/views/Boat/components/BoatTable.vue +++ b/src/views/Boat/components/BoatTable.vue @@ -1,6 +1,14 @@