|
@@ -82,9 +82,15 @@
|
|
|
<div
|
|
|
class="details-1"
|
|
|
v-if="pageData.carbon?.length">
|
|
|
- <p><span>Carbon Footprint Transparency</span></p>
|
|
|
- <p>This product has undergone mid-lifecycle carbon footprint assessment. Click the <span>Carbon Footprint</span> project to view detailed calculations by transport mode;</p>
|
|
|
- <p>We offer <span>Gold Standard-ceriied carbon offset proiects</span> for neutralization, ensuring full transparency and compliance with global sustainability standards. Contact us for detailed reports.</p>
|
|
|
+ <h3>Carbon Footprint Transparency</h3>
|
|
|
+ <p>
|
|
|
+ This product has undergone mid-lifecycle carbon footprint assessment. Click the
|
|
|
+ <span>Carbon Footprint</span> project to view detailed calculations by transport mode;
|
|
|
+ </p>
|
|
|
+ <p>
|
|
|
+ We offer <span>Gold Standard-ceriied carbon offset proiects</span> for neutralization, ensuring full
|
|
|
+ transparency and compliance with global sustainability standards. Contact us for detailed reports.
|
|
|
+ </p>
|
|
|
</div>
|
|
|
<div
|
|
|
class="details-2"
|
|
@@ -140,17 +146,9 @@
|
|
|
<nuxt-link
|
|
|
v-if="isProduct(item.trim())"
|
|
|
:to="{ name: 'product-code', params: { code: item.trim() } }"
|
|
|
- ><span
|
|
|
- >{{ item
|
|
|
- }}<em v-if="i < comIncluded_packaging.length - 1"
|
|
|
- >,</em
|
|
|
- ></span
|
|
|
- ></nuxt-link
|
|
|
- >
|
|
|
- <span v-else
|
|
|
- >{{ item
|
|
|
- }}<em v-if="i < comIncluded_packaging.length - 1">,</em></span
|
|
|
+ ><span>{{ item }}<em v-if="i < comIncluded_packaging.length - 1">,</em></span></nuxt-link
|
|
|
>
|
|
|
+ <span v-else>{{ item }}<em v-if="i < comIncluded_packaging.length - 1">,</em></span>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li v-if="comInfo.optional_packaging">
|
|
@@ -162,17 +160,9 @@
|
|
|
<nuxt-link
|
|
|
v-if="isProduct(item.trim())"
|
|
|
:to="{ name: 'product-code', params: { code: item.trim() } }"
|
|
|
- ><span
|
|
|
- >{{ item
|
|
|
- }}<em v-if="i < comOptional_packaging.length - 1"
|
|
|
- >,</em
|
|
|
- ></span
|
|
|
- ></nuxt-link
|
|
|
- >
|
|
|
- <span v-else
|
|
|
- >{{ item
|
|
|
- }}<em v-if="i < comOptional_packaging.length - 1">,</em></span
|
|
|
+ ><span>{{ item }}<em v-if="i < comOptional_packaging.length - 1">,</em></span></nuxt-link
|
|
|
>
|
|
|
+ <span v-else>{{ item }}<em v-if="i < comOptional_packaging.length - 1">,</em></span>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li v-if="comInfo.optional_attachments">
|
|
@@ -182,12 +172,7 @@
|
|
|
:to="{ name: 'product-code', params: { code: item } }"
|
|
|
v-for="(item, i) in comOptional_attachments"
|
|
|
:key="item"
|
|
|
- ><span
|
|
|
- >{{ item
|
|
|
- }}<em v-if="i < comOptional_attachments.length - 1"
|
|
|
- >,</em
|
|
|
- ></span
|
|
|
- ></nuxt-link
|
|
|
+ ><span>{{ item }}<em v-if="i < comOptional_attachments.length - 1">,</em></span></nuxt-link
|
|
|
>
|
|
|
</div>
|
|
|
</li>
|
|
@@ -206,12 +191,7 @@
|
|
|
</ul>
|
|
|
<!-- <el-button @click="ticketFormVisible = true"
|
|
|
v-if="isLogin && /\@promocollection.uk/.test(userInfo.email)">Ticket</el-button> -->
|
|
|
- <ul
|
|
|
- v-if="
|
|
|
- comInfo.print_position ||
|
|
|
- comInfo.print_size_area ||
|
|
|
- comInfo.print_marketing
|
|
|
- ">
|
|
|
+ <ul v-if="comInfo.print_position || comInfo.print_size_area || comInfo.print_marketing">
|
|
|
<li>
|
|
|
<div class="title">Print Info</div>
|
|
|
</li>
|
|
@@ -292,9 +272,8 @@
|
|
|
</ul>
|
|
|
</div>
|
|
|
<p class="details-1">
|
|
|
- Due to differences between production batches, product sizes may vary
|
|
|
- slightly. The above Colours and measurements are approximate, and for
|
|
|
- guidance only.
|
|
|
+ Due to differences between production batches, product sizes may vary slightly. The above Colours and
|
|
|
+ measurements are approximate, and for guidance only.
|
|
|
</p>
|
|
|
<!-- <div v-for="(item,index) in pageData.showcase" :key="index" class="showcase">
|
|
|
<a :href="item.url">
|
|
@@ -315,16 +294,12 @@
|
|
|
v-show="false">
|
|
|
<div v-if="stockData.length > 0">
|
|
|
<stock-table :data="stockData"></stock-table>
|
|
|
- <p class="quote-tips">
|
|
|
- For quantities over available stock levels, please contact us for
|
|
|
- pricing and timing
|
|
|
- </p>
|
|
|
+ <p class="quote-tips">For quantities over available stock levels, please contact us for pricing and timing</p>
|
|
|
</div>
|
|
|
<div
|
|
|
class="quote-tips"
|
|
|
v-else>
|
|
|
- This product is made offshore, and is available for any quantity equal
|
|
|
- to, or above the listed MOQ
|
|
|
+ This product is made offshore, and is available for any quantity equal to, or above the listed MOQ
|
|
|
</div>
|
|
|
</div>
|
|
|
<div v-show="typeTab == 3">
|
|
@@ -390,17 +365,13 @@
|
|
|
<!-- 右侧project浮动框 -->
|
|
|
<project
|
|
|
:productInfo="pageData"
|
|
|
- :domainList="domainList"
|
|
|
- @handleAdd="openProjectdDialog"
|
|
|
- @handleOpenTicket="openTicket"
|
|
|
- @handleOpenFootprint="footprintVisible = true"
|
|
|
- @save-selected-data="saveUserSelected"></project>
|
|
|
+ @handleOpenFootprint="footprintVisible = true"></project>
|
|
|
<!-- 加入project弹框 -->
|
|
|
- <project-dialog
|
|
|
+ <!-- <project-dialog
|
|
|
:visible.sync="projectdDialogVisible"
|
|
|
:id="pageData.id"
|
|
|
:projectObj="projectObj"
|
|
|
- :isCopy="false"></project-dialog>
|
|
|
+ :isCopy="false"></project-dialog> -->
|
|
|
<ElImageViewer
|
|
|
v-if="showViewer"
|
|
|
:on-close="closeViewer"
|
|
@@ -482,12 +453,8 @@ export default {
|
|
|
{ prop: '反馈详情', type: 'textarea' },
|
|
|
],
|
|
|
rules: {
|
|
|
- 问题类型: [
|
|
|
- { required: true, message: 'Please select', trigger: 'change' },
|
|
|
- ],
|
|
|
- 反馈详情: [
|
|
|
- { required: true, message: 'Please enter', trigger: 'blur' },
|
|
|
- ],
|
|
|
+ 问题类型: [{ required: true, message: 'Please select', trigger: 'change' }],
|
|
|
+ 反馈详情: [{ required: true, message: 'Please enter', trigger: 'blur' }],
|
|
|
},
|
|
|
footprintVisible: false,
|
|
|
}
|
|
@@ -574,9 +541,7 @@ export default {
|
|
|
if (Array.isArray(printService) && printService.length) {
|
|
|
printService.forEach(item => {
|
|
|
if (item.decorationSelectId) {
|
|
|
- const temp = item.decorationList.filter(
|
|
|
- i => i.id === item.decorationSelectId
|
|
|
- )
|
|
|
+ const temp = item.decorationList.filter(i => i.id === item.decorationSelectId)
|
|
|
result.printService[`${item.id}`] = {
|
|
|
id: item.decorationSelectId,
|
|
|
num: temp[0].num,
|
|
@@ -584,10 +549,7 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
- localStorage.setItem(
|
|
|
- `product-user-select-${this.$route.params.code}`,
|
|
|
- JSON.stringify(result)
|
|
|
- )
|
|
|
+ localStorage.setItem(`product-user-select-${this.$route.params.code}`, JSON.stringify(result))
|
|
|
},
|
|
|
// getStock() {
|
|
|
// this.$axios.get('/api/quote/stock_new', { params: {id: this.id} }).then(res => {
|