| | |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | .van-popup__close-icon--top-right { |
| | | top: .25rem; |
| | | right: -.00rem; |
| | | } |
| | | |
| | | .content-wrapper-jymx { |
| | | margin: 27px; |
| | | background: #ffffff; |
| | | border-radius: 8px; |
| | | padding: 3px; |
| | | box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); |
| | | } |
| | | |
| | | .van-cell__value--alone { |
| | | color: #323233; |
| | | text-align: center; |
| | | } |
| | | |
| | | .si-container { |
| | | padding: 0.16rem; |
| | | } |
| | | |
| | | /* 状态显示组 */ |
| | | .si-status-group { |
| | | display: flex; |
| | | gap: 0.08rem; |
| | | margin-bottom: 0.16rem; |
| | | } |
| | | |
| | | .si-status-box { |
| | | flex: 1; |
| | | height: 0.6rem; |
| | | border-radius: 0.08rem; |
| | | display: flex; |
| | | overflow: hidden; |
| | | } |
| | | |
| | | /* 左侧状态标签 */ |
| | | .si-status__left { |
| | | width: 1.2rem; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | } |
| | | |
| | | .si-status__left::after { |
| | | content: ''; |
| | | position: absolute; |
| | | right: -0.13rem; |
| | | width: 0.27rem; |
| | | height: 100%; |
| | | transform: skewX(-10deg); |
| | | z-index: 1; |
| | | } |
| | | |
| | | /* 右侧数值显示 */ |
| | | .si-status__right { |
| | | flex: 1; |
| | | display: flex; |
| | | align-items: center; |
| | | padding-left: 0.16rem; |
| | | background: #fff; |
| | | font-weight: bold; |
| | | } |
| | | |
| | | /* 状态类型修饰符 */ |
| | | .si-status--ok .si-status__left { |
| | | background: #07c160; |
| | | } |
| | | |
| | | .si-status--ok .si-status__left::after { |
| | | background: #07c160; |
| | | } |
| | | |
| | | .si-status--error .si-status__left { |
| | | background: #ee0a24; |
| | | } |
| | | |
| | | .si-status--error .si-status__left::after { |
| | | background: #ee0a24; |
| | | } |
| | | |
| | | /* 输入框样式 */ |
| | | .si-input-box { |
| | | height: 0.6rem; |
| | | border-radius: 0.08rem; |
| | | display: flex; |
| | | overflow: hidden; |
| | | background: #fff; |
| | | box-shadow: 0 0.02rem 0.04rem rgba(0,0,0,0.05); |
| | | } |
| | | |
| | | .si-input__left { |
| | | width: 1.2rem; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | background: #e6f7ff; |
| | | position: relative; |
| | | } |
| | | |
| | | .si-input__left::after { |
| | | content: ''; |
| | | position: absolute; |
| | | right: 0; |
| | | top: 50%; |
| | | transform: translateY(-50%); |
| | | width: 0.01rem; |
| | | height: 50%; |
| | | background: #d9d9d9; |
| | | } |
| | | |
| | | /* 统一文字样式 */ |
| | | .si-status__label, |
| | | .si-input__label, |
| | | .si-status__right { |
| | | font-size: 0.20rem; |
| | | line-height: 0.23rem; |
| | | } |
| | | |
| | | .si-input__label { |
| | | color: #1890ff; |
| | | } |
| | | |
| | | .si-status__label{ |
| | | color: #ffffff; |
| | | } |
| | | |
| | | .si-status__right{ |
| | | justify-content: center; /* 新增居中 */ |
| | | background: #e3edf7; |
| | | padding-right: 0.16rem; |
| | | } |
| | | |
| | | /* Vant输入框深度定制 */ |
| | | :deep(.si-input-field .van-field__control) { |
| | | height: 0.6rem !important; |
| | | font-size: 0.20rem !important; |
| | | line-height: 0.23rem !important; |
| | | color: #333; |
| | | } |
| | | |
| | | .van-icon-popup { |
| | | font-size: 0.5rem; |
| | | } |
| | | |
| | | .inline-title { |
| | | display: flex; |
| | | align-items: center; |
| | | gap: 8px; /* 间距控制 */ |
| | | max-width: 80vw; |
| | | } |
| | | |
| | | .release-no { |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | |
| | | .status-tag { |
| | | flex-shrink: 0; /* 防止被压缩 */ |
| | | font-size: 12px; |
| | | padding: 2px 6px; |
| | | } |
| | | |
| | | /* 覆盖导航栏默认样式 */ |
| | | :deep(.van-nav-bar__title) { |
| | | max-width: none !important; |
| | | } |
| | | |
| | | |
| | | /* 深度覆盖vant样式,换行 */ |
| | | :deep(.wrap-field .van-field__control) { |
| | | white-space: pre-wrap !important; |
| | | word-break: break-all !important; |
| | | line-height: 1.5; |
| | | min-height: 24px; /* 最小高度保障 */ |
| | | padding: 4px 0; /* 增加垂直间距 */ |
| | | } |
| | | |
| | | /* 专用内容容器,换行 */ |
| | | .wrap-content { |
| | | width: 100%; |
| | | display: block; |
| | | } |
| | | |
| | | |
| | | /* .si-input-box { |
| | | display: flex; |
| | | align-items: center; |
| | | padding: 12px 16px; |
| | | }*/ |
| | | |
| | | .input-container { |
| | | flex: 1; |
| | | display: flex; |
| | | gap: 20px; /* 控制两个输入组之间的间距 */ |
| | | align-items: center; |
| | | background: #e3edf7; |
| | | } |
| | | |
| | | .input-group { |
| | | display: flex; |
| | | align-items: center; |
| | | gap: 8px; |
| | | flex: 1; /* 使两个输入组均分剩余空间 */ |
| | | } |
| | | |
| | | .si-input-field { |
| | | flex: 1; /* 输入框占据剩余空间 */ |
| | | width: 100%; /* 控制最大宽度 */ |
| | | background: #f7f8fa; |
| | | border-radius: 4px; |
| | | padding: 8px 12px; |
| | | } |
| | | |
| | | </style> |
| | | </asp:Content> |
| | |
| | | <template #title> |
| | | <div class="inline-title"> |
| | | <span class="release-no">{{ formData.releaseNo }}</span> |
| | | <van-tag round plain |
| | | <van-tag round plain v-if="formData.fcheckResu === '不合格'" type="danger">不合格</van-tag> |
| | | <van-tag round plain v-else-if="formData.fcheckResu === '检验中'" type="warning">检验中</van-tag> |
| | | <van-tag round plain v-else-if="formData.fcheckResu === '未检验'" type="warning">未检验</van-tag> |
| | | <van-tag round plain v-else-if="formData.fcheckResu === ''" type="warning">未检验</van-tag> |
| | | <van-tag round plain v-else-if="formData.fcheckResu === '合格'" type="warning">合格</van-tag> |
| | | <van-tag round plain v-else type="danger">异常状态</van-tag> |
| | | <%-- <van-tag round plain |
| | | :type="formData.fcheckResu === '不合格' ? 'danger' : |
| | | formData.fcheckResu === '检验中' ? 'warning' : 'success'" |
| | | formData.fcheckResu === '检验中' ? 'warning' : |
| | | formData.fcheckResu === '未检验' ? 'warning' : |
| | | formData.fcheckResu === '合格' ? 'success' :'danger'" |
| | | class="status-tag" |
| | | > |
| | | {{ formData.fcheckResu || '合格' }} |
| | | </van-tag> |
| | | {{ formData.fcheckResu }} |
| | | </van-tag>--%> |
| | | </div> |
| | | </template> |
| | | <template #right> |
| | |
| | | </template> |
| | | </van-field> |
| | | <van-field label="数量" colon="true" v-model="formData.fcovertQty" readonly ></van-field> |
| | | <van-field label="不合格描述" v-if='formData.fcheckResu == "不合格"' colon="true" v-model="formData.remarks" ></van-field> |
| | | <%-- <van-field label="检测结果" colon="true" v-model="formData.fcheckResu" readonly ></van-field>--%> |
| | | <%-- <van-field label="检测结果" colon="true" readonly > |
| | | <template #input> |
| | | <van-tag round v-if="formData.fcheckResu === '不合格'" type="danger">不合格</van-tag> |
| | | <van-tag round v-else-if="formData.fcheckResu === '检验中'" type="warning">检验中</van-tag> |
| | | <van-tag round v-else type="success">合格</van-tag> |
| | | </template> |
| | | </van-field>--%> |
| | | <van-field label="不合格描述" v-if='formData.fcheckResu == "不合格"' colon v-model="remarks" readonly class="wrap-field"> |
| | | <template #input> |
| | | <div class="wrap-content">{{ remarks }}</div> |
| | | </template> |
| | | <template #button> |
| | | <van-tag type="primary" style="font-size:15px" @click="updateRemarks(formData.guid)">输入</van-tag> |
| | | </template> |
| | | </van-field> |
| | | <%-- <van-field |
| | | v-if='formData.fcheckResu == "不合格"' colon="true" |
| | | v-model="formData.remarks" |
| | | rows="2" |
| | | autosize |
| | | label="不合格描述" |
| | | type="textarea" |
| | | maxlength="50" |
| | | placeholder="请输入不合格描述" |
| | | show-word-limit |
| | | />--%> |
| | | <!-- 不合格表述输入 --> |
| | | <van-dialog v-model="showDialog" title="不合格描述" :show-cancel-button="false" @confirm="remarksConfirm"> |
| | | <van-field |
| | | v-model="remarks" |
| | | rows="5" |
| | | autosize |
| | | type="textarea" |
| | | maxlength="500" |
| | | placeholder="请输入不合格描述" |
| | | show-word-limit |
| | | /> |
| | | </van-dialog> |
| | | </van-cell-group> |
| | | </div> |
| | | <%-- <van-button :loading="ttrre" type="info" loading-text="加载中..." v-if="!isShowTable && formData.fsubmit == 0" @click="submit">检验提交</van-button> |
| | | <van-button type="danger" v-if="!isShowTable && formData.fsubmit == 0" @click="removeXJ">重新加载项目</van-button>--%> |
| | | <%-- <van-button :loading="ttrre" type="info" loading-text="加载中..." @click="submit">检验提交</van-button> |
| | | <van-button type="danger" @click="removeXJ">刷新重做</van-button>--%> |
| | | <!-- 方式 --> |
| | | <div class="uploader-container"> |
| | | <!-- 使用 field 样式包裹 --> |
| | | <div class="van-cell van-field" style="padding: 10px 16px"> |
| | | <!-- 左侧标签 --> |
| | | <div class="van-field__label" style="width: 90px">图片上传</div> |
| | | |
| | | <!-- 右侧上传区域 --> |
| | | <div class="van-field__body" style="flex: 1"> |
| | | <van-uploader |
| | | v-model="fileList" |
| | | :after-read="afterRead" |
| | | style="padding: 8px 0" |
| | | @delete="handleDelete" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <van-tabs color="#000" title-active-color="#0283EF" style="padding-bottom: 120px;"> |
| | | <van-tab title="检验项目" class="mySolid font"> |
| | | <van-row type="flex" justify="center"> |
| | |
| | | height: '100%' , |
| | | boxShadow: '-2px 0 12px rgba(0, 0, 0, 0.1)' |
| | | }" |
| | | @click-close-icon ="init" |
| | | > |
| | | <!-- 弹出内容 --> |
| | | <div class="content-wrapper-jymx"> |
| | |
| | | <van-field label="样本数" colon="true" v-model="jymxData.ybsl" readonly ></van-field> |
| | | <%--<van-field label="预览结果" colon="true" v-model="jymxData.result" readonly ></van-field>--%> |
| | | <%--<van-field label="结果录入" colon="true" v-model="resultValue" placeholder="请输入OK-数字或NG-数字"></van-field>--%> |
| | | |
| | | <van-field label="检测结果" colon="true" readonly > |
| | | <template #input> |
| | | <van-tag round plain v-if="jymxData.fcheckResu === '合格'" type="success">合格</van-tag> |
| | | <van-tag round plain v-else-if="jymxData.fcheckResu === '不合格'" type="danger">不合格</van-tag> |
| | | <van-tag round plain v-else type="warning">检验中</van-tag> |
| | | </template> |
| | | </van-field> |
| | | <template> |
| | | <div class="si-input-box"> |
| | | <!-- 左侧标题 --> |
| | |
| | | class="input-tag" |
| | | >OK</van-tag> |
| | | <van-field |
| | | :ref="'okValue_' + tabActive" |
| | | v-model="okValue" |
| | | class="si-input-field" |
| | | placeholder="请输入OK数量" |
| | | placeholder="输入OK数" |
| | | :border="false" |
| | | @keyup.enter.native="getInputOK" |
| | | @input="handleNumberInput1" |
| | | /> |
| | | </div> |
| | | |
| | |
| | | class="input-tag" |
| | | >NG</van-tag> |
| | | <van-field |
| | | :ref="'ngValue_' + tabActive" |
| | | v-model="ngValue" |
| | | class="si-input-field" |
| | | placeholder="请输入NG数量" |
| | | placeholder="输入NG数" |
| | | :border="false" |
| | | @keyup.enter.native="getInputNG" |
| | | @input="handleNumberInput2" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <van-field label="检测结果" colon="true" readonly > |
| | | <template #input> |
| | | <van-tag round plain v-if="jymxData.fcheckResu === '合格'" type="success">合格</van-tag> |
| | | <van-tag round plain v-else-if="jymxData.fcheckResu === '不合格'" type="danger">不合格</van-tag> |
| | | <van-tag round plain v-else type="warning">检验中</van-tag> |
| | | </template> |
| | | </van-field> |
| | | </van-cell-group> |
| | | </template> |
| | | <!-- StatsInput.vue --> |
| | |
| | | <div class="si-status__left"> |
| | | <span class="si-status__label">合格数</span> |
| | | </div> |
| | | <div class="si-status__right">256</div> |
| | | <div class="si-status__right">{{okNum}}</div> |
| | | </div> |
| | | |
| | | <div class="si-status-box si-status--error"> |
| | | <div class="si-status__left"> |
| | | <span class="si-status__label">不合格数</span> |
| | | </div> |
| | | <div class="si-status__right">32</div> |
| | | <div class="si-status__right">{{ngNum}}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template> |
| | | <!-- 输入框 --> |
| | |
| | | </div> |
| | | <div class="si-status__right"> |
| | | <van-field |
| | | :ref="'inputValue' + tabActive" |
| | | v-model="inputValue" |
| | | placeholder="请输入" |
| | | placeholder="请输入特征值" |
| | | :border="false" |
| | | class="si-input-field" |
| | | @input="handleNumberInput3" |
| | | @keyup.enter.native="getInputTZZ" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <van-row type="flex" justify="center"> |
| | | <van-col span="10" center class="text-left padding-left">检验项目</van-col> |
| | | <van-col span="6">样本集</van-col> |
| | | <van-col span="6">样本值</van-col> |
| | | <van-col span="8">判定标志</van-col> |
| | | <van-col span="6">判定标志</van-col> |
| | | <van-col span="6">操作</van-col> |
| | | </van-row> |
| | | <van-row v-for="(item,index) in tableMxData.list2" :key="index" type="flex" justify="left"> |
| | | |
| | | <van-col span="10" center class="text-left padding-left" > |
| | | <van-col span="6" > |
| | | <van-cell center |
| | | center :title="item.fcheckItemd5" @click="togglePopup(index)"></van-cell> |
| | | center :title="item.fcheckItem" @click="togglePopup(index)"></van-cell> |
| | | </van-col> |
| | | <van-col span="6" > |
| | | <van-cell center |
| | | center :title="item.fcheckResu"></van-cell> |
| | | </van-col> |
| | | <van-col center span="8" > |
| | | <van-col center span="6" > |
| | | <van-cell center |
| | | center v-if="item.fstand === '√'"> |
| | | <van-tag round plain type="success" style="font-size:15px">合格</van-tag> |
| | |
| | | center v-else > |
| | | <van-tag round plain type="warning" style="font-size:15px">检验中</van-tag> |
| | | </van-cell> |
| | | </van-col> |
| | | <van-col center span="6" > |
| | | <van-tag type="danger" style="font-size:15px" @click="deleteDetail13(item.guid)">删除</van-tag> |
| | | </van-col> |
| | | </van-row> |
| | | |
| | |
| | | >刷新重做</van-button> |
| | | </div> |
| | | </van-popup> |
| | | |
| | | |
| | | |
| | | </asp:Content> |
| | | <asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" Runat="Server"> |
| | | <comloading v-if="isLoading"></comloading> |
| | | <%--<comback ></comback>--%> |
| | | </asp:Content> |
| | | <asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server"> |
| | | <script src="../Js/LLJ/Add.js?<%=1192 %>"></script> |
| | | <script src="../Js/LLJ/Add.js?<%=119996 %>"></script> |
| | | </asp:Content> |