| | |
| | | </view> |
| | | <view class="dropdown-row"> |
| | | <view class="info-label">不良原因:</view> |
| | | <select id="defect-reason" v-model="badreason" v-if="current"> |
| | | <select id="defect-reason" v-model="badreason" v-if="current" @change="saveRemarksGid"> |
| | | <option value=""></option> |
| | | <option value="外观不良">外观不良</option> |
| | | <option value="功能不良">功能不良</option> |
| | | <option value="尺寸不良">尺寸不良</option> |
| | | <option value="包装不良">包装不良</option> |
| | | <option value="性能不良">性能不良</option> |
| | | <option value="装配不良">装配不良</option> |
| | | <option value="安规不良">安规不良</option> |
| | | </select> |
| | | </view> |
| | | <view class="dropdown-row"> |
| | | <view class="info-label">所属车间:</view> |
| | | <select id="defect-reason" v-model="WORKSHOP" v-if="current"> |
| | | <select id="defect-reason" v-model="WORKSHOP" v-if="current" @change="saveRemarksGid"> |
| | | <option value=""></option> |
| | | <option value="生产一部">生产一部</option> |
| | | <option value="生产二部">生产二部</option> |
| | |
| | | </view> |
| | | <view class="dropdown-row"> |
| | | <view class="info-label">评审状态:</view> |
| | | <select id="defect-reason" v-model="PSTYPE" v-if="current"> |
| | | <select id="defect-reason" v-model="PSTYPE" v-if="current" @change="saveRemarksGid"> |
| | | <option value=""></option> |
| | | <option value="特采/让步使用">特采/让步使用</option> |
| | | <option value="挑选/返工使用">挑选/返工使用</option> |
| | | <option value="退货">退货</option> |
| | | <option value="待判">待判</option> |
| | | |
| | | </select> |
| | | </view> |
| | |
| | | <view class="info-label">破坏实验数量:</view> |
| | | <view class="info-value highlight">{{formData.phsy}}</view> |
| | | </view> |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | <!-- 表单上方操作按钮区 --> |
| | | <view class="top-action-buttons"> |
| | | <button class="action-btn" @click="getInspectionItems" v-if="this.current">获取检验项目</button> |
| | | <button class="action-btn" @click="handleEmergencyRelease" v-if="this.current">紧急放行</button> |
| | | <button class="action-btn" @click="handleWithdraw" v-if="this.current">撤回</button> |
| | | </view> |
| | | |
| | | <!-- 检验项目表格 --> |
| | | <view class="inspection-table"> |
| | |
| | | </table> |
| | | </view> |
| | | |
| | | <!-- 页面内容区域 --> |
| | | <view class="content-wrapper"> |
| | | <!-- 为底部按钮留出空间 --> |
| | | </view> |
| | | |
| | | <!-- 固定在底部的操作按钮区 --> |
| | | <view class="fixed-action-buttons"> |
| | | <button class="action-btn" @click="handleEmergencyRelease" v-if="this.current">紧急放行</button> |
| | | <button class="action-btn" @click="handleWithdraw" v-if="this.current">撤回</button> |
| | | <button class="action-btn" @click="getInspectionItems" v-if="this.current">获取检验项目</button> |
| | | <button class="action-btn" @click="addDestruction" v-if="this.current">破坏实验</button> |
| | | <button class="action-btn" @click="uploadImages">上传/查看图片</button> |
| | | <button class="action-btn" @click="fetchDrawingNumber">调取PLM图纸</button> |
| | | <button class="action-btn" @click="viewAttachmentInfo">查看附件信息</button> |
| | | <button class="action-btn" @click="addDefectDescription" v-if="this.current">添加不良描述</button> |
| | | <button class="action-btn primary" @click="submitInspection" v-if="this.current">检验提交</button> |
| | | <!-- 表单下方操作按钮区 --> |
| | | <view class="bottom-action-buttons"> |
| | | <button class="action-btn small" @click="addDestruction" v-if="this.current">破坏实验</button> |
| | | <button class="action-btn small" @click="uploadImages">上传/查看图片</button> |
| | | <button class="action-btn small" @click="fetchDrawingNumber">调取PLM图纸</button> |
| | | <button class="action-btn small" @click="viewAttachmentInfo">查看附件信息</button> |
| | | <button class="action-btn small" @click="addDefectDescription" v-if="this.current">添加不良描述</button> |
| | | <button class="action-btn small primary" @click="submitInspection" v-if="this.current">检验提交</button> |
| | | </view> |
| | | <view v-if="remarksPopup" class="overlay"> |
| | | <view class="popup"> |
| | |
| | | this.formData.PHSY = data.PHSY; |
| | | |
| | | console.log("加载的紧急放行状态:", this.formData.emergencyStatus); |
| | | |
| | | this.badreason = data.blyy; |
| | | this.PSTYPE = data.pszt; |
| | | this.WORKSHOP = data.sscj; |
| | | this.$post({ |
| | | url: "/LLJ/getJYItem", |
| | | data: { |
| | |
| | | this.attachments = []; |
| | | this.$post({ |
| | | url: "/LLJ/getAttachments", |
| | | data: { releaseNo: this.formData.releaseNo } |
| | | data: { itemNo: this.formData.itemNo } |
| | | }).then(res => { |
| | | this.attachmentsLoading = false; |
| | | if (res.status === 0) { |
| | |
| | | } |
| | | // #endif |
| | | }, |
| | | |
| | | saveRemarksGid() { |
| | | this.$post({ |
| | | url: "/LLJ/saveRemarksGid", |
| | | data: { |
| | | gid: this.formData.id, |
| | | releaseNo: this.formData.releaseNo, |
| | | BLYY: this.badreason, |
| | | SSCJ: this.WORKSHOP, |
| | | PSZT: this.PSTYPE |
| | | } |
| | | }).then(res => { |
| | | if (res.data.tbBillList > 0) { |
| | | this.$showMessage("自动保存成功"); |
| | | } |
| | | }); |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | |
| | | font-family: 'Microsoft YaHei', 'Segoe UI', sans-serif; |
| | | max-width: 1000px; |
| | | margin: 0 auto; |
| | | padding: 20px 20px 160px 20px; /* 底部增加padding为固定按钮留空间 */ |
| | | padding: 20px 20px 100px 20px; /* 底部增加内边距为固定按钮留空间 */ |
| | | background-color: #fff; |
| | | box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); |
| | | min-height: 100vh; |
| | |
| | | background-color: #f1f5f9; |
| | | } |
| | | |
| | | /* 固定底部按钮样式 */ |
| | | .fixed-action-buttons { |
| | | position: fixed; |
| | | bottom: 0; |
| | | left: 0; |
| | | right: 0; |
| | | background-color: #fff; |
| | | box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); |
| | | padding: 10px 15px 20px 15px; |
| | | z-index: 100; |
| | | /* 表单上方操作按钮区样式 */ |
| | | .top-action-buttons { |
| | | display: flex; |
| | | flex-direction: column; |
| | | gap: 8px; |
| | | max-height: 150px; |
| | | overflow-y: auto; |
| | | justify-content: flex-end; |
| | | gap: 10px; |
| | | margin: 20px 0; |
| | | padding: 15px; |
| | | background-color: #f8f9fa; |
| | | border-radius: 8px; |
| | | border: 1px solid #e9ecef; |
| | | } |
| | | |
| | | /* 表单下方操作按钮区样式 */ |
| | | .bottom-action-buttons { |
| | | display: flex; |
| | | justify-content: center; |
| | | gap: 8px; |
| | | padding: 12px; |
| | | flex-wrap: wrap; |
| | | align-items: center; |
| | | position: fixed; /* 固定在屏幕底部 */ |
| | | bottom: 0; /* 距离底部0px */ |
| | | left: 0; /* 距离左边0px */ |
| | | right: 0; /* 距离右边0px */ |
| | | background-color: #fff; /* 背景色 */ |
| | | border-top: 1px solid #e9ecef; /* 顶部边框 */ |
| | | z-index: 1000; /* 确保在最上层 */ |
| | | box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); /* 顶部阴影 */ |
| | | } |
| | | |
| | | .action-btn { |
| | | background-color: #ecf0f1; |
| | |
| | | background-color: #2980b9; |
| | | } |
| | | |
| | | /* 内容包装器,为底部按钮留出空间 */ |
| | | .content-wrapper { |
| | | height: 20px; /* 额外的空白区域 */ |
| | | /* 小尺寸按钮样式 */ |
| | | .action-btn.small { |
| | | padding: 10px 12px; |
| | | font-size: 14px; |
| | | min-height: 44px; |
| | | white-space: nowrap; |
| | | flex-shrink: 0; |
| | | min-width: 80px; |
| | | max-width: 120px; |
| | | flex: 1; |
| | | } |
| | | |
| | | /* 原有按钮样式保持兼容 */ |
| | |
| | | .attachment-popup-close:hover { |
| | | background: #bdbdbd; |
| | | } |
| | | |
| | | /* 响应式设计 */ |
| | | @media (max-width: 500px) { |
| | | |
| | | .info-row, |
| | | .info-block { |
| | | flex-direction: column; |
| | | align-items: flex-start; |
| | | } |
| | | |
| | | .doc-links { |
| | | margin-left: 0; |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .top-action-buttons { |
| | | flex-direction: column; |
| | | align-items: stretch; |
| | | } |
| | | |
| | | .bottom-action-buttons { |
| | | flex-direction: row; |
| | | align-items: center; |
| | | justify-content: center; |
| | | padding: 8px; |
| | | gap: 6px; |
| | | position: fixed; /* 保持固定在屏幕底部 */ |
| | | bottom: 0; |
| | | left: 0; |
| | | right: 0; |
| | | background-color: #fff; |
| | | border-top: 1px solid #e9ecef; |
| | | z-index: 1000; |
| | | box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); |
| | | } |
| | | |
| | | .action-btn.small { |
| | | min-width: 70px; |
| | | max-width: 100px; |
| | | padding: 8px 10px; |
| | | font-size: 13px; |
| | | min-height: 40px; |
| | | } |
| | | |
| | | .inspection-table table { |
| | | display: block; |
| | | overflow-x: auto; |
| | | } |
| | | } |
| | | </style> |