Commit 9e322a5c authored by 黄奎's avatar 黄奎

页面调整

parent ccacaa2d
......@@ -91,7 +91,7 @@ class HotelService {
"pageSize":100,
"currentPage":1,
"total":0,
"OpType":0
"OpType":1
}
return request('hoteltip_get_GetPageList', params)
}
......
This diff is collapsed.
This diff is collapsed.
<template>
<q-card flat class="bg-white q-pa-none light-shadow" style="border:1px solid #EEE"
:style="{'width':$q.platform.is.desktop?'375px':'350px'}">
<q-card
flat
class="bg-white q-pa-none light-shadow"
style="border: 1px solid #eee"
:style="{ width: $q.platform.is.desktop ? '375px' : '350px' }"
>
<div class="Notifications-bg">
<div class="q-pa-lg row items-center">
<span class="text-white text-weight-bold text-h6 q-mr-sm q-pl-sm">{{$t('Notifications.title')}}</span>
<div class="text-grey-1 f12 q-pl-sm">0 {{$t('Notifications.subtitle')}}</div>
<span class="text-white text-weight-bold text-h6 q-mr-sm q-pl-sm">{{
$t("Notifications.title")
}}</span>
<div class="text-grey-1 f12 q-pl-sm">0 {{ $t("Notifications.subtitle") }}</div>
</div>
</div>
<div class="Notifications-height q-py-md" style="display:none">
<q-scroll-area :thumb-style="scrollStyle.thumbStyle" :bar-style="scrollStyle.barStyle" class="full-height">
<div class="Notifications-height q-py-md" style="display: none">
<q-scroll-area
:thumb-style="scrollStyle.thumbStyle"
:bar-style="scrollStyle.barStyle"
class="full-height"
>
<q-list>
<q-item v-for="(item,index) in menus" class="rounded-borders q-py-md">
<q-item v-for="(item, index) in menus" class="rounded-borders q-py-md">
<q-item-section>
<div class="row items-center" :style="{'width':$q.platform.is.desktop?'340px':'317px'}">
<div class="rounded-borders Notifications-item q-mr-md"
:class="{'bg-blue-1':index==0,'bg-red-1':index==1,'bg-yellow-1':index==2,'bg-green-1':index==3,
'activeOne':index==0,'activeTwo':index==1,'activeThree':index==2,'activeFour':index==3}">
<div
class="row items-center"
:style="{ width: $q.platform.is.desktop ? '340px' : '317px' }"
>
<div
class="rounded-borders Notifications-item q-mr-md"
:class="{
'bg-blue-1': index == 0,
'bg-red-1': index == 1,
'bg-yellow-1': index == 2,
'bg-green-1': index == 3,
activeOne: index == 0,
activeTwo: index == 1,
activeThree: index == 2,
activeFour: index == 3,
}"
>
<svg-icon :icon="item.icon" :size="16" color="nav"></svg-icon>
</div>
<div class="col column">
<span class="Notifications-overflow Notifications-title text-weight-bold f12 cursor-pointer q-mr-md text-grey-8">Project AlicePhase 1 developmentPhase 1 developmentPhase 1 development</span>
<div class="Notifications-overflow Notifications-text text-grey-6 fz12">Phase 1 developmentPhase 1 developmentPhase 1 developmentPhase 1 development</div>
<span
class="Notifications-overflow Notifications-title text-weight-bold f12 cursor-pointer q-mr-md text-grey-8"
>Project AlicePhase 1 developmentPhase 1 developmentPhase 1
development</span
>
<div class="Notifications-overflow Notifications-text text-grey-6 fz12">
Phase 1 developmentPhase 1 developmentPhase 1 developmentPhase 1
development
</div>
</div>
<div
class="bg-blue-grey-1 q-px-xs q-ml-lg text-grey-6 Notifications-time fz10"
>
1 {{ $t("Notifications.time") }}
</div>
<div class="bg-blue-grey-1 q-px-xs q-ml-lg text-grey-6 Notifications-time fz10">1 {{$t('Notifications.time')}}</div>
</div>
</q-item-section>
</q-item>
</q-list>
</q-scroll-area>
</div>
<div class="text-center q-my-xl">
{{$t('noneNotify')}}
{{ $t("noneNotify") }}
</div>
</q-card>
</template>
</template>
<script lang="ts">
import { defineComponent, ref, reactive, toRefs, provide, onMounted, inject } from 'vue'
import { useMenus, Menu } from '../../utils/menus'
import { getLangs } from "../../utils/tools";
import { SitLang } from '../../@types';
import { useI18n } from 'vue-i18n'
import { dispatchAction } from '../../store/utils';
import { UserActionsType } from '../../store/modules/user/actions';
import useScrollModule from '../../module/scrollbar/scrollModule'
import svgIcon from '../global/svg-icon.vue'
import { DirtionmaryHelper } from '../../config/dictionary';
export default defineComponent({
<script lang="ts">
import { defineComponent, ref, reactive, toRefs, provide, onMounted, inject } from "vue";
import { useMenus, Menu } from "../../utils/menus";
import { getLangs } from "../../utils/tools";
import { SitLang } from "../../@types";
import { useI18n } from "vue-i18n";
import { dispatchAction } from "../../store/utils";
import { UserActionsType } from "../../store/modules/user/actions";
import useScrollModule from "../../module/scrollbar/scrollModule";
import svgIcon from "../global/svg-icon.vue";
import { DirtionmaryHelper } from "../../config/dictionary";
export default defineComponent({
components: { svgIcon },
name: 'user-info',
name: "user-info",
props: {
user: {
type: Object,
require: true
}
require: true,
},
},
setup(props) {
const {locale,t } = useI18n();
const data=reactive({
const { locale, t } = useI18n();
const data = reactive({
currentLang: {} as SitLang,
langs:[] as SitLang[],
langs: [] as SitLang[],
menus: [] as Menu[],
scrollStyle: {} as any,
})
data.scrollStyle = useScrollModule().scrollStyle
});
data.scrollStyle = useScrollModule().scrollStyle;
// 根据域名渲染菜单
const menList = useMenus.getMenus().filter(x=>{
return x.id == 16
})
data.menus = !inject(DirtionmaryHelper.DOMAIN_NAME)?menList:useMenus.getMenus()
const menList = useMenus.getMenus().filter((x) => {
return x.id == 16;
});
data.menus = !inject(DirtionmaryHelper.DOMAIN_NAME) ? menList : useMenus.getMenus();
data.langs=getLangs()
if(data.langs && data.langs.length>0){
data.currentLang = data.langs.find(x=> x.langLocale==locale.value) ?? {};
data.langs = getLangs();
if (data.langs && data.langs.length > 0) {
data.currentLang = data.langs.find((x) => x.langLocale == locale.value) ?? {};
}
// 切换语言
const methods = {
getLanguage (val:SitLang) {
locale.value = val.langLocale??''
data.currentLang=val
localStorage.setItem('lanuage', val.langLocale??'')
window.location.reload()
getLanguage(val: SitLang) {
locale.value = val.langLocale ?? "";
data.currentLang = val;
localStorage.setItem("lanuage", val.langLocale ?? "");
window.location.reload();
},
signOut(){
dispatchAction<UserActionsType>('user', 'setUserSignout', null)
window.location.reload()
}
}
onMounted(()=>{
})
return {...toRefs(data),...methods}
}
})
</script>
signOut() {
dispatchAction<UserActionsType>("user", "setUserSignout", null);
window.location.reload();
},
};
onMounted(() => {});
return { ...toRefs(data), ...methods };
},
});
</script>
<style>
.Notifications-height{
.Notifications-height {
height: 325px;
}
.Notifications-bg{
background:url('../../assets/images/menu-header-bg.jpg')no-repeat;
background-size:100% 100%;
}
.Notifications-item{
}
.Notifications-bg {
background: url("../../assets/images/menu-header-bg.jpg") no-repeat;
background-size: 100% 100%;
}
.Notifications-item {
cursor: default;
display: flex;
height: 35px;
width: 35px;
align-items: center;
justify-content: center;
}
.Notifications-item svg g{
}
.Notifications-item svg g {
cursor: default;
padding: 4px;
}
.Notifications-item.activeOne svg g [fill]{
}
.Notifications-item.activeOne svg g [fill] {
fill: var(--q-primary) !important;
}
.Notifications-item.activeTwo svg g [fill]{
}
.Notifications-item.activeTwo svg g [fill] {
fill: var(--q-negative) !important;
}
.Notifications-item.activeThree svg g [fill]{
}
.Notifications-item.activeThree svg g [fill] {
fill: var(--q-warning) !important;
}
.Notifications-item.activeFour svg g [fill]{
}
.Notifications-item.activeFour svg g [fill] {
fill: var(--q-positive) !important;
}
.Notifications-overflow{
}
.Notifications-overflow {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.Notifications-title:hover{
}
.Notifications-title:hover {
color: var(--q-primary) !important;
}
.Notifications-title{
}
.Notifications-title {
font-weight: 600;
}
.Notifications-title,.Notifications-text{
}
.Notifications-title,
.Notifications-text {
width: 100%;
}
.Notifications-demo:hover .q-item__section{
color:var(--q-primary) !important;
}
.Notifications-time{
}
.Notifications-demo:hover .q-item__section {
color: var(--q-primary) !important;
}
.Notifications-time {
color: var(--kt-light-inverse);
line-height: 18px;
border-radius: 6px;
}
}
</style>
<template>
<div class="fix-height-subpage column no-wrap q-pa-md">
<list-header></list-header>
<div class="col q-mt-md" :class="{ 'light-shadow q-pa-md bg-white rounded-border': $q.platform.is.desktop }">
<div
class="col q-mt-md"
:class="{ 'light-shadow q-pa-md bg-white rounded-border': $q.platform.is.desktop }"
>
<list-table></list-table>
</div>
<hotel-tips></hotel-tips>
......@@ -9,71 +12,71 @@
</template>
<script lang="ts">
import useMetaModule from '../../module/meta/metaModule'
import { useI18n } from 'vue-i18n'
import svgIcon from '../../components/global/svg-icon.vue'
import { defineComponent, inject, provide, reactive, ref, toRefs } from 'vue'
import { DirtionmaryHelper } from '../../config/dictionary'
import ListHeader from '../../components/hotel/list/ListHeader.vue'
import ListTable from '../../components/hotel/list/ListTable.vue'
import HotelTips from '../../components/hotel/list/HotelTips.vue'
import { date } from 'quasar'
import { getStoreGetter } from '../../store/utils'
import useMetaModule from "../../module/meta/metaModule";
import { useI18n } from "vue-i18n";
import svgIcon from "../../components/global/svg-icon.vue";
import { defineComponent, inject, provide, reactive, ref, toRefs } from "vue";
import { DirtionmaryHelper } from "../../config/dictionary";
import ListHeader from "../../components/hotel/list/ListHeader.vue";
import ListTable from "../../components/hotel/list/ListTable.vue";
import HotelTips from "../../components/hotel/list/HotelTips.vue";
import { date } from "quasar";
import { getStoreGetter } from "../../store/utils";
export default defineComponent({
components: { svgIcon, ListHeader, ListTable, HotelTips },
setup() {
const data = reactive({})
let { setTitle } = useMetaModule()
const { locale, t } = useI18n()
const pageTitle = inject(DirtionmaryHelper.PAGE_TITLE_KEY) as any
pageTitle.value = t('hotel.pageTitle')
setTitle(pageTitle.value)
const data = reactive({});
let { setTitle } = useMetaModule();
const { locale, t } = useI18n();
const pageTitle = inject(DirtionmaryHelper.PAGE_TITLE_KEY) as any;
pageTitle.value = t("hotel.pageTitle");
setTitle(pageTitle.value);
const search = reactive({
HotelChooseArray: [],
StartDate: '',
EndDate: '',
Country: '651',
StartDate: "",
EndDate: "",
Country: "0",
Province: 0,
City: 0,
OutBranchId: -1,
Star: 0,
PriceLevel: 0,
Supplier: 0,
MaxPrice: '',
MinPrice: '',
HotelName: ''
})
MaxPrice: "",
MinPrice: "",
HotelName: "",
});
provide(DirtionmaryHelper.HOTEL_QUERY_PARAM, search)
const HotelCarList = ref<Array<any>>([])
let userInfo = getStoreGetter<UserGetter>('user', 'getUser')
if(userInfo.groupId==100){
search.Country=0
provide(DirtionmaryHelper.HOTEL_QUERY_PARAM, search);
const HotelCarList = ref<Array<any>>([]);
let userInfo = getStoreGetter<UserGetter>("user", "getUser");
if (userInfo && userInfo.groupId == 2) {
search.Country = "651";
}
const cacheCars = localStorage.getItem(DirtionmaryHelper.HOTEL_HOTELCARS_CACHE)
const cacheCars = localStorage.getItem(DirtionmaryHelper.HOTEL_HOTELCARS_CACHE);
if (cacheCars) {
let cacheCarArray = JSON.parse(cacheCars).filter((x: any) => date.getDateDiff(new Date(x.Date), new Date(), 'days') >= 20)
HotelCarList.value = cacheCarArray
let cacheCarArray = JSON.parse(cacheCars).filter(
(x: any) => date.getDateDiff(new Date(x.Date), new Date(), "days") >= 20
);
HotelCarList.value = cacheCarArray;
}
provide(DirtionmaryHelper.HOTEL_CAR_LIST, HotelCarList)
const updateObj = ref<any>({})
provide(DirtionmaryHelper.HOTEL_UPDATEHOTEL_CAR, updateObj)
const orderstatus = ref(false)
provide(DirtionmaryHelper.HOTEL_CAR_ORDER_STATUS, orderstatus)
const HotelLengths = ref(0)
provide(DirtionmaryHelper.HOTEL_CAR_ORDER_LENGTH, HotelLengths)
provide(DirtionmaryHelper.HOTEL_CAR_LIST, HotelCarList);
const updateObj = ref<any>({});
provide(DirtionmaryHelper.HOTEL_UPDATEHOTEL_CAR, updateObj);
const orderstatus = ref(false);
provide(DirtionmaryHelper.HOTEL_CAR_ORDER_STATUS, orderstatus);
const HotelLengths = ref(0);
provide(DirtionmaryHelper.HOTEL_CAR_ORDER_LENGTH, HotelLengths);
const menu = inject(DirtionmaryHelper.MENU_KEYS) as any
menu.value = 2
const methods = {}
const menu = inject(DirtionmaryHelper.MENU_KEYS) as any;
menu.value = 2;
const methods = {};
return {
...toRefs(data),
...methods
}
}
})
...methods,
};
},
});
</script>
<style>
</style>
<style></style>
......@@ -6,60 +6,76 @@
class="text-grey"
active-color="primary"
indicator-color="primary"
align="left">
align="left"
>
<template v-if="b2bUserInfo && b2bUserInfo.groupId == 2">
<q-tab :name="0" :label="$t('v102.vehicle.tabtitle0')"></q-tab>
</template>
<q-tab :name="1" :label="$t('v102.vehicle.tabtitle1')"></q-tab>
<q-tab :name="2" :label="$t('v102.vehicle.tabtitle2')"></q-tab>
<q-tab :name="3" :label="$t('v102.vehicle.tabtitle3')"></q-tab>
</q-tabs>
<teamOrder v-if="tab==0" :OrderId="OrderId"></teamOrder>
<CharteredBusOrder :type="tab" :OrderId="OrderId" v-if="tab!=0"></CharteredBusOrder>
<teamOrder v-if="tab == 0" :OrderId="OrderId"></teamOrder>
<CharteredBusOrder :type="tab" :OrderId="OrderId" v-if="tab != 0"></CharteredBusOrder>
</div>
</template>
<script lang="ts">
import { defineComponent, ref, reactive, toRefs, provide, onMounted, inject,watch } from 'vue'
import useMetaModule from '../../module/meta/metaModule'
import { useI18n } from 'vue-i18n'
import teamOrder from './teamOrder.vue'
import CharteredBusOrder from '../CharteredBus//CharteredBusOrder.vue'
import { DirtionmaryHelper } from '../../config/dictionary'
import { currentRouter } from 'src/router'
import {
defineComponent,
ref,
reactive,
toRefs,
provide,
onMounted,
inject,
watch,
} from "vue";
import useMetaModule from "../../module/meta/metaModule";
import { useI18n } from "vue-i18n";
import teamOrder from "./teamOrder.vue";
import CharteredBusOrder from "../CharteredBus//CharteredBusOrder.vue";
import { DirtionmaryHelper } from "../../config/dictionary";
import { currentRouter } from "src/router";
import { getStoreGetter } from "../../store/utils";
export default defineComponent({
components: { teamOrder,CharteredBusOrder },
components: { teamOrder, CharteredBusOrder },
setup() {
const { t } = useI18n()
let { setTitle } = useMetaModule()
const pageTitle = inject(DirtionmaryHelper.PAGE_TITLE_KEY) as any
pageTitle.value = t('v102.vehicle.pageTitle')
setTitle(pageTitle.value)
const { t } = useI18n();
let { setTitle } = useMetaModule();
const pageTitle = inject(DirtionmaryHelper.PAGE_TITLE_KEY) as any;
pageTitle.value = t("v102.vehicle.pageTitle");
const b2bUserInfo = getStoreGetter<UserGetter>("user", "getUser");
setTitle(pageTitle.value);
const data = reactive({
tab: 0,
OrderId: null as any,
})
watch(()=>data.tab,(o,n)=>{
})
if(currentRouter.currentRoute){
if(currentRouter.currentRoute.value.params.OrderId){
data.OrderId = currentRouter.currentRoute.value.params.OrderId
});
if (b2bUserInfo && b2bUserInfo.groupId == 2) {
data.tab = 0;
} else {
data.tab = 1;
}
if(currentRouter.currentRoute.value.params.pages<4){
data.tab = Number(currentRouter.currentRoute.value.params.pages)
}else{
data.tab = 0
watch(
() => data.tab,
(o, n) => {}
);
if (currentRouter.currentRoute) {
if (currentRouter.currentRoute.value.params.OrderId) {
data.OrderId = currentRouter.currentRoute.value.params.OrderId;
}
if (currentRouter.currentRoute.value.params.pages < 4) {
data.tab = Number(currentRouter.currentRoute.value.params.pages);
} else {
data.tab = 0;
}
const menu = inject(DirtionmaryHelper.MENU_KEYS) as any
menu.value = 6
const methods = {
}
onMounted(() => {
})
return { ...toRefs(data), ...methods }
const menu = inject(DirtionmaryHelper.MENU_KEYS) as any;
menu.value = 6;
const methods = {};
onMounted(() => {});
return { ...toRefs(data), b2bUserInfo, ...methods };
},
})
});
</script>
<style scoped>
.date-box :deep(.q-field__control) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment