Files
shipping-portal/resources/assets/vue/components/companies/sections/CustomerProfileSectionComponent.vue
T
2021-12-08 15:53:47 +08:00

140 lines
15 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="row" v-if="company">
<div class="col">
<div class="row m-b-30" v-if="$store.getters.isAdmin">
<div class="col bg-master-lightest b-rad-lg p-t-10 p-b-15">
<customer-profile-component :data="company"></customer-profile-component>
</div>
</div>
<div class="row" v-show="!$store.getters.isShowing('createOrderForm')">
<div class="col">
<on-boarding-section-component v-if="!company.last_order"></on-boarding-section-component>
<div class="row" v-if="company.last_order">
<div class="col">
<div class="row m-b-20">
<div class="col no-padding">
<div class="alert alert-warning" role="alert">
<div class="row">
<div class="col">
<div class="row">
<div class="col">
<p class="fs-18 p-t-15"><i class="fa fa-exclamation-triangle m-r-5"></i> !!!! 海运费涨价通知 NOTICE OF PRICE INCREMENT !!! <i class="fa fa-exclamation-triangle m-l-5"></i></p>
</div>
</div>
<div class="row">
<div class="col">
<p>由于近期海运费非常不稳定运费每个星期都会调整请发货入仓之前按以下按键确认最新运费价格</p>
<p>Due to the recent unstable shipping rates, shipping costs are adjusted weekly, please confirm the latest shipping prices before shipping into the warehouse by following the button below.</p>
<a href="https://www.cief-malaysia.com/services-sea-shipping/" target="_blank"><div class="btn btn-complete">Sea Shipping Price List</div></a>
</div>
</div>
</div>
</div>
</div>
<chinese-new-year-memo-component></chinese-new-year-memo-component>
</div>
</div>
<div class="row m-b-30 relative">
<div class="col">
<div class="row">
<div class="d-none d-sm-inline absolute hint-text dotted-grid" style="width: 200px;height: 100px; right: 10px; bottom: 0; z-index: 1; opacity: 0.3;"></div>
<div class="col bg-info-primary-gradient text-white b-rad-lg padding-25">
<div class="row align-items-center">
<div class="d-none d-sm-inline col-3 text-center no-padding">
<img src="/images/qr-box.svg" class="w-75">
</div>
<div class="col">
<div class="row m-b-10">
<div class="col">
<h6 class="text-white bold no-margin">Making A New Order ?</h6>
<p class="no-margin fs-12">Place an order with us, and send the QR Code label to your supplier to attach to your order's packages</p>
</div>
</div>
<quick-order-component :data="company"></quick-order-component>
<div class="row">
<div class="col">
<div class="row m-l-0 m-r-0 m-b-10 align-items-center hint-text">
<div class="col-auto b-b b-white p-t-5 p-l-30 hint-text d-none d-md-inline"></div>
<div class="auto m-r-10 m-l-10">
<small class="fs-10 small all-caps">Or Select a different warehouse & delivery address</small>
</div>
<div class="col-auto b-b b-white p-t-5 p-l-30 hint-text d-none d-md-inline"></div>
</div>
<div class="row">
<div class="col">
<div @click="$store.dispatch('toggleSection', {name: 'createOrderForm', status: true})" class="btn btn-lg btn-primary bg-primary-darker b-a b-white b-thick p-t-0 p-b-0 p-l-0 fs-12 b-rad-none">
<div class="row align-items-center no-margin">
<div class="col-auto bg-primary-dark padding-10">
<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"
width="20" height="20"
viewBox="0 0 172 172"
style=" fill:#000000;"><g fill="none" fill-rule="nonzero" stroke="none" stroke-width="1" stroke-linecap="butt" stroke-linejoin="miter" stroke-miterlimit="10" stroke-dasharray="" stroke-dashoffset="0" font-family="none" font-weight="none" font-size="none" text-anchor="none" style="mix-blend-mode: normal"><path d="M0,172v-172h172v172z" fill="none"></path><g fill="#ffffff"><path d="M81.33047,19.35c-1.71013,0 -3.3514,0.68069 -4.56035,1.88965l-13.16035,13.16035l13.16035,13.16035c1.20896,1.20895 2.85022,1.88965 4.56035,1.88965h49.81953c3.53669,0 6.45,-2.91331 6.45,-6.45v-17.2c0,-3.53669 -2.91331,-6.45 -6.45,-6.45zM34.4,21.5c-7.09901,0 -12.9,5.80099 -12.9,12.9c0,7.09901 5.80099,12.9 12.9,12.9c6.3679,0 11.67787,-4.67316 12.70684,-10.7584c0.06423,0.00569 0.12868,0.0085 0.19316,0.0084c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15c-0.06454,0.0013 -0.129,0.0055 -0.19316,0.0126c-1.02727,-6.08723 -6.33751,-10.7626 -12.70684,-10.7626zM81.33047,23.65h49.81953c1.21481,0 2.15,0.93519 2.15,2.15v17.2c0,1.21481 -0.93519,2.15 -2.15,2.15h-49.81953c-0.56887,0 -1.11657,-0.22634 -1.52012,-0.62988l-10.12012,-10.12012l10.12012,-10.12012c0.40354,-0.40355 0.95125,-0.62988 1.52012,-0.62988zM34.4,25.8c4.77512,0 8.6,3.82488 8.6,8.6c0,4.77512 -3.82488,8.6 -8.6,8.6c-4.77512,0 -8.6,-3.82488 -8.6,-8.6c0,-4.77512 3.82488,-8.6 8.6,-8.6zM122.55,27.95c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,32.25c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM55.9,32.25c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM122.55,36.55c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,49.45c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,58.05c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,66.65c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM81.33047,70.95c-1.71013,0 -3.3514,0.68069 -4.56035,1.88965l-13.16035,13.16035l13.16035,13.16035c1.20896,1.20895 2.85022,1.88965 4.56035,1.88965h62.71953c3.53669,0 6.45,-2.91331 6.45,-6.45v-17.2c0,-3.53669 -2.91331,-6.45 -6.45,-6.45zM34.4,73.1c-7.09901,0 -12.9,5.80099 -12.9,12.9c0,7.09901 5.80099,12.9 12.9,12.9c6.3679,0 11.67787,-4.67316 12.70684,-10.7584c0.06423,0.00569 0.12868,0.0085 0.19316,0.0084c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15c-0.06454,0.0013 -0.129,0.0055 -0.19316,0.0126c-1.02727,-6.08723 -6.33751,-10.7626 -12.70684,-10.7626zM81.33047,75.25h62.71953c1.21481,0 2.15,0.93519 2.15,2.15v17.2c0,1.21481 -0.93519,2.15 -2.15,2.15h-62.71953c-0.56887,0 -1.11657,-0.22634 -1.52012,-0.62988l-10.12012,-10.12012l10.12012,-10.12012c0.40354,-0.40355 0.95125,-0.62988 1.52012,-0.62988zM34.4,77.4c4.77512,0 8.6,3.82488 8.6,8.6c0,4.77512 -3.82488,8.6 -8.6,8.6c-4.77512,0 -8.6,-3.82488 -8.6,-8.6c0,-4.77512 3.82488,-8.6 8.6,-8.6zM135.45,79.55c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,83.85c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM55.9,83.85c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM135.45,88.15c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,101.05c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,109.65c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,118.25c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM81.33047,122.55c-1.71013,0 -3.3514,0.68069 -4.56035,1.88965l-13.16035,13.16035l13.16035,13.16035c1.20896,1.20895 2.85022,1.88965 4.56035,1.88965h36.91953c3.53669,0 6.45,-2.91331 6.45,-6.45v-17.2c0,-3.53669 -2.91331,-6.45 -6.45,-6.45zM34.4,124.7c-7.09901,0 -12.9,5.80099 -12.9,12.9c0,7.09901 5.80099,12.9 12.9,12.9c6.3679,0 11.67787,-4.67316 12.70684,-10.7584c0.06423,0.00569 0.12868,0.0085 0.19316,0.0084c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15c-0.06454,0.0013 -0.129,0.0055 -0.19316,0.0126c-1.02727,-6.08723 -6.33751,-10.7626 -12.70684,-10.7626zM81.33047,126.85h36.91953c1.21481,0 2.15,0.93519 2.15,2.15v17.2c0,1.21481 -0.93519,2.15 -2.15,2.15h-36.91953c-0.56887,0 -1.11657,-0.22634 -1.52012,-0.62988l-10.12012,-10.12012l10.12012,-10.12012c0.40354,-0.40355 0.95125,-0.62988 1.52012,-0.62988zM34.4,129c4.77512,0 8.6,3.82488 8.6,8.6c0,4.77512 -3.82488,8.6 -8.6,8.6c-4.77512,0 -8.6,-3.82488 -8.6,-8.6c0,-4.77512 3.82488,-8.6 8.6,-8.6zM109.65,131.15c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM34.4,135.45c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM55.9,135.45c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15zM109.65,139.75c-1.18741,0 -2.15,0.96259 -2.15,2.15c0,1.18741 0.96259,2.15 2.15,2.15c1.18741,0 2.15,-0.96259 2.15,-2.15c0,-1.18741 -0.96259,-2.15 -2.15,-2.15z"></path></g></g></svg>
</div>
<div class="col p-r-0">
<h6 class="no-margin bold fs-14 text-white">Create New Order <i class="fa fa-long-arrow-right m-l-20 fs-16"></i></h6>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<order-section-component :data="company"></order-section-component>
</div>
</div>
</div>
</div>
<order-form-component v-show="$store.getters.isShowing('createOrderForm')" :company="company" :section="section"></order-form-component>
</div>
</div>
</template>
<script>
export default {
props: {
company_id: {
type: Number,
required: true,
}
},
data(){
return {
section: 'orderListSection',
isLoading: true,
company: null
}
},
computed: {
pendingQueue () {
return this.$store.getters.isInCompleteQueue(this.section);
}
},
watch: {
pendingQueue(inComplete){
if(inComplete){
this.fetchCompany();
}
}
},
created(){
this.$store.dispatch('updateListQueue', {'name': this.section});
},
methods: {
fetchCompany(){
this.isLoading = true;
this.submit(route('api.company.show', this.company_id), 'get', this.section, false, false)
},
successHandler(response){
this.$store.dispatch('completeList', {'name': this.section, 'data': []});
this.isLoading = false;
this.company = response.payload.data;
}
}
}
</script>