ah_sz_gqj_app/pages/samples/sampleCode.vue

248 lines
5.7 KiB
Vue

<template>
<view>
<view class="topTab">
<view class="tab-header">
<view class="left">
<image @click="customNavigateBack" src="@/static/img/back.png" mode=""></image>
</view>
<view class="centered-text">收样标签</view>
</view>
</view>
<view class="page-content">
<view class="main-titile">
{{formData.submitLocation}}
</view>
<view class="main-content">
<table border="1">
<tr>
<td colspan="2" class="centered-text">试验结果</td>
</tr>
<tr>
<td class="left-column">样品名称</td>
<td class="right-column">{{formData.sampleTools}}</td>
</tr>
<tr>
<td class="left-column">规格型号</td>
<td class="right-column">{{formData.devModule}}</td>
</tr>
<tr>
<td class="left-column">样品编号</td>
<td class="right-column">{{formData.devCode}}</td>
</tr>
<tr>
<td class="left-column">样品状态</td>
<td class="right-column">
<text v-if="formData.processStatus==null">待试验 </text>
<text v-if="formData.processStatus==0">待提交 </text>
<text v-if="formData.processStatus==1">待审阅 </text>
<text v-if="formData.processStatus==2">待审核 </text>
<text v-if="formData.processStatus==3">待审批 </text>
<text v-if="formData.processStatus==4">试验结束 </text>
</td>
</tr>
<tr>
<td class="left-column">试验项目</td>
<td class="right-column" style="padding: 0;">
<view class="subTr" v-for="(item, index) in formData.configItemsVos" :key="index">
<view class="subTd1">{{item.experTypeName}}</view>
<view class="subTd2">{{item.amount}}</view>
</view>
</td>
</tr>
<!-- <tr>
<td class="left-column">试验周期</td>
<td class="right-column"></td>
</tr> -->
<tr>
<td class="left-column" rowspan="2">送检单位</td>
<td class="right-column">{{formData.customName}}</td>
</tr>
</table>
</view>
</view>
</view>
</template>
<script>
import { getSampleLabelByQrCode } from '@/service/url.js';
import tabHeader from '@/components/tab-Header.vue';
import AES from "@/utils/cryptoJs/aes.js";
export default {
components: {
tabHeader,
},
data() {
return {
customerCode:'',
formData:{},
};
},
onLoad(option) {
console.log(option)
this.customerCode = option.customerCode || '';
this.getSampleLabelByQrCode()
},
onShow() {
},
methods: {
//返回
customNavigateBack() {
// 自定义返回逻辑
const pages = getCurrentPages(); // 获取页面栈
const len = pages.length;
let backPage = ''; // 要返回的页面路径
for (let i = len - 2; i >= 0; i--) {
// 从倒数第二个页面开始遍历,找到第一个不是当前页面的页面
if (pages[i].route !== 'pages/A/A') {
backPage = pages[i].route;
break;
}
}
if (backPage) {
uni.navigateBack({
delta: len - 1 - pages.findIndex(page => page.route === backPage) // 返回到已存在的页面
});
}
},
//
getSampleLabelByQrCode(){
let obj = {
"customerCode":this.customerCode,
}
let param = {
encryptedData: AES.encrypt(JSON.stringify(obj))
// encryptedData: JSON.stringify(obj)
}
this.$http.post(getSampleLabelByQrCode,param).then(res => {
if (res) {
if(res.code == '200'){
console.log(res)
this.formData=res.data;
}else{
}
}
}).catch(error => {
console.log(error)
})
},
},
}
</script>
<style lang="scss">
/deep/.u-popup .u-slide-right-enter-active{
left: 0;
}
.centered-text {
margin: auto;
padding-right: 176rpx;
font-weight: 600;
}
.topTab{
.left{
// white-space: nowrap;
// padding-left: 30px;
}
}
.searchInput{
height: 100%;
}
.page-content{
width: 100%;
height: 90vh;
position: absolute;
top:8.5vh;
padding: 0rpx 0;
background-color: #F3F3F3;
.main-titile{
font-size: 38rpx;
font-weight: 600;
text-align: center;
padding-top: 28rpx;
color: #666666;
}
.main-content{
height: auto;
width: 90%;
margin: auto;
border: solid 1px #C4C4C4;
background-color: #FAFAFA;
margin-top: 40rpx;
display: flex;
flex-direction: column;
table {
width: 100%; /* 确保表格宽度适应容器 */
border-collapse: collapse;
flex-grow: 1; /* 使表格扩展以占据剩余空间 */
min-height: 0; /* 确保表格可以收缩 */
border: 1px solid #C4C4C4; /* 更改边框颜色 */
}
.centered-text {
text-align: center;
padding: 10rpx 0; /* 上下内边距以确保居中 */
}
.left-column {
color: #505050;
font-weight: 600;
width: 30%;
text-align: center;
}
.right-column {
width: 70%; /* 自动计算剩余宽度,减去左侧列的宽度和边框 */
padding-left: 30rpx; /* 左侧内边距 */
word-break: break-word; /* 允许在单词中间换行 */
white-space: normal; /* 允许换行 */
overflow: visible; /* 显示超出部分 */
}
/* 设置每行的高度,除了最后一行 */
tr:not(:last-child) td {
height: 80rpx;
}
/* 设置最后一行的高度 */
tr:last-child td {
height: 80rpx;
}
.subTr{
width: 100%;
display: flex;
height: 100rpx;
.subTd1{
width: 60% ;
height: 100rpx;
display: flex;
align-items: center;
justify-content: center;
border-right: 1rpx solid #CCCCCC;
border-bottom: 1rpx solid #CCCCCC;
}
.subTd2{
width: 40% ;
height: 100rpx;
display: flex;
align-items: center;
justify-content: center;
border-bottom: 1rpx solid #CCCCCC;
}
}
}
}
</style>