|
@@ -5,6 +5,23 @@
|
|
v-loading="true"
|
|
v-loading="true"
|
|
class="com-loading"></div>
|
|
class="com-loading"></div>
|
|
<template v-else-if="isLoading == 2">
|
|
<template v-else-if="isLoading == 2">
|
|
|
|
+ <!-- <div class="eco-tip" v-if="orderDetail.Emission_Total_Kg && orderDetail.Emission_Total_Kg != '0'">
|
|
|
|
+ <div class="eco-tip-title">
|
|
|
|
+ <img
|
|
|
|
+ src="@/assets/img/esg/leaf.png"
|
|
|
|
+ alt="eco"
|
|
|
|
+ class="eco-tip-icon" />
|
|
|
|
+ <span> Protecting Nature Starts with Your Choice</span>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="eco-tip-desc">
|
|
|
|
+ Your Eco-Friendly Purchase Generated
|
|
|
|
+ <span class="eco-tip-co2"
|
|
|
|
+ >{{ orderDetail.Emission_Total_Kg || 0 }} KG</span
|
|
|
|
+ >
|
|
|
|
+ Of Carbon Emissions. Together, We<br />
|
|
|
|
+ Embrace Enyironmental Responsibility For A More Sustainable Future.
|
|
|
|
+ </div>
|
|
|
|
+ </div> -->
|
|
<section class="main-header">
|
|
<section class="main-header">
|
|
<div class="main-header-mid flex between">
|
|
<div class="main-header-mid flex between">
|
|
<h1>Job Name:{{ orderDetail.Sales_Order_Title_Job_Name }}</h1>
|
|
<h1>Job Name:{{ orderDetail.Sales_Order_Title_Job_Name }}</h1>
|
|
@@ -13,14 +30,21 @@
|
|
class="user_logo"
|
|
class="user_logo"
|
|
v-if="orderDetail.user_logo" />
|
|
v-if="orderDetail.user_logo" />
|
|
</div>
|
|
</div>
|
|
- <div class="main-header-mid flex between">
|
|
|
|
|
|
+ <div class="main-header-mid">
|
|
<ul class="left">
|
|
<ul class="left">
|
|
<li
|
|
<li
|
|
- class="left-i"
|
|
|
|
- @click="shareDialogVisible = true"
|
|
|
|
|
|
+ class="left-i link-div"
|
|
v-if="isShow">
|
|
v-if="isShow">
|
|
- <i class="el-icon-share"></i>
|
|
|
|
- <span>Client Tracking Share</span>
|
|
|
|
|
|
+ <div @click="shareDialogVisible = true">
|
|
|
|
+ <i class="el-icon-share"></i>
|
|
|
|
+ <span>Client Tracking Share</span>
|
|
|
|
+ </div>
|
|
|
|
+ <!-- <div v-for="(item) in orderDetail.crm_esg_res?.flat()"
|
|
|
|
+ @click="downloadEsg(item)"
|
|
|
|
+ :key="item.id">
|
|
|
|
+ <img src="@/assets/img/order/cer.png" />
|
|
|
|
+ <span> DownLoad {{ item.name }}</span>
|
|
|
|
+ </div> -->
|
|
</li>
|
|
</li>
|
|
<li
|
|
<li
|
|
class="left-i"
|
|
class="left-i"
|
|
@@ -252,6 +276,10 @@
|
|
min-width="300">
|
|
min-width="300">
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
<p class="colorBlue">{{ scope.row.product_name }}</p>
|
|
<p class="colorBlue">{{ scope.row.product_name }}</p>
|
|
|
|
+ <!-- <p class="table-list-co2" v-if="scope.row.Emision_Details_value && scope.row.Emision_Details_value != '0'">
|
|
|
|
+ <img src="@/assets/img/esg/co2_green.png" alt="CO2" class="co2-icon" />
|
|
|
|
+ <span>{{ scope.row.Emision_Details_value }} kg CO₂e</span>
|
|
|
|
+ </p> -->
|
|
<p v-html="scope.row.product_description"></p>
|
|
<p v-html="scope.row.product_description"></p>
|
|
<!-- <p :class="scope.row.showMore?'ellipsis':''" v-html="scope.row.product_description"></p>
|
|
<!-- <p :class="scope.row.showMore?'ellipsis':''" v-html="scope.row.product_description"></p>
|
|
<p class="colorBlue cursor" @click="toggleShow(scope.row)" v-if="scope.row.product_description">{{scope.row.showMore?'Show More':'Conceal'}}<i :class="scope.row.showMore?'el-icon-caret-bottom':'el-icon-caret-top'"></i></p> -->
|
|
<p class="colorBlue cursor" @click="toggleShow(scope.row)" v-if="scope.row.product_description">{{scope.row.showMore?'Show More':'Conceal'}}<i :class="scope.row.showMore?'el-icon-caret-bottom':'el-icon-caret-top'"></i></p> -->
|
|
@@ -344,13 +372,17 @@
|
|
</tr>
|
|
</tr>
|
|
</table>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
- <template v-if="isShow">
|
|
|
|
- <p class="notes-1">Notes</p>
|
|
|
|
- <p class="notes-2">Terms & conditions</p>
|
|
|
|
- <p class="notes-2">Artwork Approval</p>
|
|
|
|
- <p class="notes-3">{{ orderDetail.Subject }}</p>
|
|
|
|
- </template>
|
|
|
|
</section>
|
|
</section>
|
|
|
|
+ <!-- <section
|
|
|
|
+ v-if="orderDetail.Order_Stage === 'Sales Order Created'" style="text-align: right;border: none;">
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="orderDetail.Order_Stage === 'Sales Order Created'"
|
|
|
|
+ @click="openApproved(orderDetail)"
|
|
|
|
+ size="small"
|
|
|
|
+ style="background-color: rgb(0, 33, 59); color: #fff;"
|
|
|
|
+ plain
|
|
|
|
+ >Approved</el-button>
|
|
|
|
+ </section> -->
|
|
</template>
|
|
</template>
|
|
<div v-else>
|
|
<div v-else>
|
|
<el-empty description="No Data"></el-empty>
|
|
<el-empty description="No Data"></el-empty>
|
|
@@ -558,6 +590,60 @@ export default {
|
|
this.Tracking_URL = url
|
|
this.Tracking_URL = url
|
|
this.urlDialogShow = true
|
|
this.urlDialogShow = true
|
|
},
|
|
},
|
|
|
|
+ download(url) {
|
|
|
|
+ var urlStr = url.match('[^/]+(?!.*/)')[0]
|
|
|
|
+ this.$utils.downloadBlob(url, urlStr)
|
|
|
|
+ },
|
|
|
|
+ downloadEsg(item) {
|
|
|
|
+ if (!item.id) {
|
|
|
|
+ this.$message.error('No report available for download')
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ this.$axios
|
|
|
|
+ .post('Crmdata/downloadreport', { id: item.id, name: item.name })
|
|
|
|
+ .then(res => {
|
|
|
|
+ if (res.result) {
|
|
|
|
+ this.$utils.downloadBlob(
|
|
|
|
+ res.result?.data,
|
|
|
|
+ decodeURIComponent(res.result?.url_name)
|
|
|
|
+ )
|
|
|
|
+ } else {
|
|
|
|
+ this.$message.error('Download failed, please try again later')
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ .catch(() => {
|
|
|
|
+ this.$message.error('Download failed, please try again later')
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ openApproved(row) {
|
|
|
|
+ this.$confirm(
|
|
|
|
+ `
|
|
|
|
+ <div style="text-align:center;">
|
|
|
|
+ <h3 style="margin:0 0 10px;color:#333;">Ready to order?</h3>
|
|
|
|
+ <p style="margin:0;font-size:16px;color:#333;">Your total is <b>${this.transformNumber(
|
|
|
|
+ row.Grand_Total
|
|
|
|
+ )}</b>. Confirm to place your order.</p>
|
|
|
|
+ </div>
|
|
|
|
+ `,
|
|
|
|
+ '',
|
|
|
|
+ {
|
|
|
|
+ dangerouslyUseHTMLString: true,
|
|
|
|
+ confirmButtonText: 'Confirm',
|
|
|
|
+ cancelButtonText: 'Cancel',
|
|
|
|
+ confirmButtonClass: 'el-button',
|
|
|
|
+ cancelButtonClass: 'el-button--info',
|
|
|
|
+ center: true,
|
|
|
|
+ showClose: false,
|
|
|
|
+ confirmButtonClass: 'com-btnblack',
|
|
|
|
+ }
|
|
|
|
+ ).then(() => {
|
|
|
|
+ this.$router.push({
|
|
|
|
+ path: '/so-confirm',
|
|
|
|
+ query: { id: row.sales_orders_id, pc_psw: row.HASH },
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
},
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|