111
啊鑫
6 天以前 2b0e70bb88ced210dbc693a4d2ded2d658b1da02
pages/QC/OQC/detail.vue
@@ -13,19 +13,19 @@
               <view class="form-grid">
                  <view class="form-group">
                     <label class="form-label">项目名称:</label>
                     <input class="form-input" disabled="true" type="text" v-model="formData.fcheckItem" />
              <input v-model="formData.fcheckItem" class="form-input" disabled="true" type="text"/>
                  </view>
                  <view class="form-group">
                     <label class="form-label">规格要求:</label>
                     <input class="form-input" disabled="true" type="text" v-model="formData.fspecRequ" />
              <input v-model="formData.fspecRequ" class="form-input" disabled="true" type="text"/>
                  </view>
                  <view class="form-group">
                     <label class="form-label">检验方法:</label>
                     <input class="form-input" disabled="true" type="text" v-model="formData.inspectionMethod" />
              <input v-model="formData.inspectionMethod" class="form-input" disabled="true" type="text"/>
                  </view>
                  <view class="form-group">
                     <label class="form-label">检验工具:</label>
                     <input class="form-input" disabled="true" type="text" v-model="formData.fcheckTool" />
              <input v-model="formData.fcheckTool" class="form-input" disabled="true" type="text"/>
                  </view>
               </view>
            </view>
@@ -41,21 +41,21 @@
                     <view class="form-grid">
                        <view class="form-group">
                           <label class="form-label">检验数:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.checkQyt" />
                  <input v-model="formData.checkQyt" class="form-input" disabled="true" type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">检验标准编码:</label>
                           <input class="form-input" disabled="true" type="text"
                              v-model="formData.sampleSizeNo" />
                  <input v-model="formData.sampleSizeNo" class="form-input" disabled="true"
                         type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">检验水平:</label>
                           <input class="form-input" disabled="true" type="text"
                              v-model="formData.fcheckLevel" />
                  <input v-model="formData.fcheckLevel" class="form-input" disabled="true"
                         type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">接收水平:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.facLevel" />
                  <input v-model="formData.facLevel" class="form-input" disabled="true" type="text"/>
                        </view>
                     </view>
                  </view>
@@ -70,16 +70,16 @@
                     <view class="form-grid">
                        <view class="form-group">
                           <label class="form-label">下限:</label>
                           <input class="form-input" disabled="true" type="text"
                              v-model="formData.fdownAllow" />
                  <input v-model="formData.fdownAllow" class="form-input" disabled="true"
                         type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">标准值:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.fstand" />
                  <input v-model="formData.fstand" class="form-input" disabled="true" type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">上限:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.fupAllow" />
                  <input v-model="formData.fupAllow" class="form-input" disabled="true" type="text"/>
                        </view>
                     </view>
                  </view>
@@ -94,19 +94,19 @@
                     <view class="form-grid">
                        <view class="form-group">
                           <label class="form-label">AC数:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.facQty" />
                  <input v-model="formData.facQty" class="form-input" disabled="true" type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">RE数:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.freQty" />
                  <input v-model="formData.freQty" class="form-input" disabled="true" type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">不合格数:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.fngQty" />
                  <input v-model="formData.fngQty" class="form-input" disabled="true" type="text"/>
                        </view>
                        <view class="form-group">
                           <label class="form-label">预览结果:</label>
                           <input class="form-input" disabled="true" type="text" v-model="formData.fcheckResu" />
                  <input v-model="formData.fcheckResu" class="form-input" disabled="true" type="text"/>
                        </view>
                     </view>
                  </view>
@@ -130,7 +130,7 @@
               <view class="form-grid">
                  <view class="form-group">
                     <label class="form-label">检测结果:</label>
                     <input class="form-input" type="number" v-model="fcheckResuK" />
              <input v-model="fcheckResuK" class="form-input" type="number"/>
                  </view>
                  <!-- 提示词作为检测结果的提示 -->
@@ -144,8 +144,8 @@
               </view>
            </view>
            <button :class="['action-btn', 'btn-primary', { 'btn-loading': isLoading }]"
               v-if="tableData.length < formData.checkQyt" @click="submit" :disabled="isLoading">
        <button v-if="tableData.length < formData.checkQyt"
                :class="['action-btn', 'btn-primary', { 'btn-loading': isLoading }]" :disabled="isLoading" @click="submit">
               {{ isLoading ? '保存中...' : '保存' }}
            </button>
         </view>
@@ -160,34 +160,34 @@
         <view class="list-container">
            <uni-table ref="table" border emptyText="暂无更多数据">
               <uni-tr>
                  <uni-th width="80" align="center" class="th">编号</uni-th>
                  <uni-th width="120" align="center" class="th">判定标识</uni-th>
                  <uni-th width="100" align="center" class="th">检验结果</uni-th>
                  <uni-th width="120" align="center" class="th">操作</uni-th>
            <uni-th align="center" class="th" width="80">编号</uni-th>
            <uni-th align="center" class="th" width="120">判定标识</uni-th>
            <uni-th align="center" class="th" width="100">检验结果</uni-th>
            <uni-th align="center" class="th" width="120">操作</uni-th>
               </uni-tr>
               <uni-tr v-for="(item, index) in tableData" :key="index" class="table-row"
                  :class="{ 'hover-effect': isHoveringRow === index }" @mouseenter="isHoveringRow = index"
          <uni-tr v-for="(item, index) in tableData" :key="index" :class="{ 'hover-effect': isHoveringRow === index }"
                  class="table-row" @mouseenter="isHoveringRow = index"
                  @mouseleave="isHoveringRow = -1">
                  <uni-td align="center">
                     {{ index + 1 }}
                  </uni-td>
                  <uni-td align="center">
                     <input class="form-input" disabled="true" type="text" v-model="item.fstand" />
              <input v-model="item.fstand" class="form-input" disabled="true" type="text"/>
                  </uni-td>
                  <uni-td align="center">
                     <span class="result-badge"
                        :class="{ 'pass': item.fcheckResu === 'OK', 'fail': item.fcheckResu === 'NG' }">
                     <span :class="{ 'pass': item.fcheckResu === 'OK', 'fail': item.fcheckResu === 'NG' }"
                    class="result-badge">
                        {{ item.fcheckResu || '未检验' }}
                     </span>
                  </uni-td>
                  <uni-td align="center">
                     <view class="action-group">
                        <button :class="['action-btn', 'btn-sm', 'btn-warn', { 'btn-disabled': isLoading }]"
                           v-if="isNumber" @click="toDetail(item)" :disabled="isLoading">
                <button v-if="isNumber"
                        :class="['action-btn', 'btn-sm', 'btn-warn', { 'btn-disabled': isLoading }]" :disabled="isLoading" @click="toDetail(item)">
                           {{ isLoading ? '处理中...' : '修改' }}
                        </button>
                        <button :class="['action-btn', 'btn-sm', 'btn-warn', { 'btn-disabled': isLoading }]"
                           v-if="!isNumber" @click="numberEdit(item)" :disabled="isLoading">
                <button v-if="!isNumber"
                        :class="['action-btn', 'btn-sm', 'btn-warn', { 'btn-disabled': isLoading }]" :disabled="isLoading" @click="numberEdit(item)">
                           {{ isLoading ? '处理中...' : editResult(item.fcheckResu) }}
                        </button>
                     </view>
@@ -200,8 +200,8 @@
      <!-- 操作按钮 -->
      <view class="action-buttons">
         <view class="button-group">
            <button :class="['action-btn', 'btn-warn', { 'btn-disabled': isLoading }]" @click="saveRemarks"
               :disabled="isLoading">
        <button :class="['action-btn', 'btn-warn', { 'btn-disabled': isLoading }]" :disabled="isLoading"
                @click="saveRemarks">
               {{ isLoading ? '处理中...' : '添加不合格描述' }}
            </button>
         </view>
@@ -209,7 +209,7 @@
      <!-- 修改检验结果弹出层 -->
      <view v-if="showPopup" class="overlay active">
         <view class="popup" :class="{ 'popup-scale': isPopupAnimated }" @animationend="isPopupAnimated = false">
      <view :class="{ 'popup-scale': isPopupAnimated }" class="popup" @animationend="isPopupAnimated = false">
            <view class="popup-header">
               <h3 class="popup-title">修改检验结果</h3>
               <view class="close-btn" @click="showPopup = !showPopup">×</view>
@@ -217,11 +217,11 @@
            <form :modelValue="editData">
               <view class="form-group">
                  <label class="form-label">检验结果:</label>
                  <input class="form-input" type="text" v-model="editData.fcheckResu" />
            <input v-model="editData.fcheckResu" class="form-input" type="text"/>
               </view>
               <view class="button-group">
                  <button :class="['action-btn', 'btn-warn', { 'btn-loading': isEditLoading }]" @click="eidt"
                     :disabled="isEditLoading">
            <button :class="['action-btn', 'btn-warn', { 'btn-loading': isEditLoading }]" :disabled="isEditLoading"
                    @click="eidt">
                     {{ isEditLoading ? '修改中...' : '修改' }}
                  </button>
                  <button @click="showPopup = !showPopup">
@@ -234,7 +234,7 @@
      <!-- 修改不合格描述弹出层 -->
      <view v-if="remarksPopup" class="overlay active">
         <view class="popup" :class="{ 'popup-scale': isPopupAnimated }" @animationend="isPopupAnimated = false">
      <view :class="{ 'popup-scale': isPopupAnimated }" class="popup" @animationend="isPopupAnimated = false">
            <view class="popup-header">
               <h3 class="popup-title">修改不合格描述</h3>
               <view class="close-btn" @click="remarksPopup = !remarksPopup">×</view>
@@ -242,11 +242,11 @@
            <form>
               <view class="form-group">
                  <label class="form-label">不合格描述:</label>
                  <input class="form-input" type="text" v-model="remarks" />
            <input v-model="remarks" class="form-input" type="text"/>
               </view>
               <view class="button-group">
                  <button :class="['action-btn', 'btn-warn', { 'btn-loading': isRemarksLoading }]"
                     @click="editRemarks" :disabled="isRemarksLoading">
                    :disabled="isRemarksLoading" @click="editRemarks">
                     {{ isRemarksLoading ? '保存中...' : '修改' }}
                  </button>
                  <button @click="remarksPopup = !remarksPopup">
@@ -825,4 +825,111 @@
      background-color: #c0c0c0;
      cursor: not-allowed;
   }
/* 三个模块并列容器样式 */
.three-modules-container {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-bottom: 20px;
}
/* 模块项样式 */
.module-item {
  background-color: #f8f9fa;
  border-radius: 8px;
  padding: 15px;
  border: 1px solid #e0e0e0;
}
.module-header {
  border-bottom: 1px solid #d0d0d0;
  padding-bottom: 8px;
  margin-bottom: 12px;
}
.module-title {
  font-size: 15px;
  font-weight: 600;
  color: #333;
}
/* 手机屏幕优化 */
@media (max-width: 768px) {
  .page-container {
    padding: 10px;
  }
  .form-card, .table-card {
    padding: 15px;
    border-radius: 8px;
  }
  .form-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .form-group {
    flex-direction: column;
    align-items: flex-start;
  }
  .form-label {
    width: auto;
    margin-bottom: 5px;
    font-size: 13px;
  }
  .form-input {
    width: 100%;
    height: 36px;
    font-size: 13px;
  }
  .three-modules-container {
    gap: 12px;
  }
  .module-item {
    padding: 12px;
  }
  .module-title {
    font-size: 14px;
  }
  .tip-box {
    padding: 8px;
  }
  .tip-text {
    font-size: 13px;
  }
}
/* 超小屏幕优化 */
@media (max-width: 480px) {
  .page-container {
    padding: 8px;
  }
  .form-card, .table-card {
    padding: 12px;
  }
  .form-input {
    height: 34px;
    font-size: 12px;
  }
  .form-label {
    font-size: 12px;
  }
  .action-btn {
    padding: 10px;
    font-size: 14px;
  }
}
</style>