diff --git a/inventory-web/src/views/outbound/create.vue b/inventory-web/src/views/outbound/create.vue
index 77e6c10..8976842 100644
--- a/inventory-web/src/views/outbound/create.vue
+++ b/inventory-web/src/views/outbound/create.vue
@@ -46,12 +46,6 @@
仅显示已通过(status=1)的审批单
-
-
- 强制完结此单
-
- 作废后该单将从下拉列表移除,出库记录将无法关联此单
-
@@ -304,7 +298,7 @@ import { ref, reactive, nextTick, onUnmounted, onMounted, computed } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import { Scissor, EditPen, Delete, CameraFilled, Close, Refresh, Select } from '@element-plus/icons-vue'
import QrScanner from '@/components/QrScanner/index.vue'
-import { getStockByBarcode, submitOutbound, getOutboundList, getApprovalRequestList, closeRequest } from '@/api/outbound'
+import { getStockByBarcode, submitOutbound, getOutboundList, getApprovalRequestList } from '@/api/outbound'
import { uploadFile } from '@/api/common/upload'
import { useUserStore } from '@/stores/user'
@@ -323,7 +317,6 @@ const formRef = ref()
const approvalRequests = ref([])
const selectedRequest = ref(null)
const requestsLoading = ref(false)
-const closingRequest = ref(false)
// 签名相关
const showSignatureDialog = ref(false)
@@ -412,37 +405,6 @@ const handleRequestChange = (val: number | null) => {
signaturePreviewUrl.value = ''
}
-// ★ 强制完结当前选中的申请单(作废,状态 1-已通过 → 4-已完结)
-const handleCloseRequest = async () => {
- if (!selectedRequest.value) return ElMessage.warning('请先选择要完结的审批单')
- const req = selectedRequest.value
-
- try {
- await ElMessageBox.confirm(
- `确定强制完结审批单【${req.request_no}】吗?\n\n` +
- `此操作将使该单从「已通过」列表中移除,且不可恢复。\n` +
- `若该单已部分出库,请确认无需再关联此单。`,
- '⚠️ 强制完结确认',
- { confirmButtonText: '确认完结', cancelButtonText: '取消', type: 'warning' }
- )
- } catch (e) {
- return // 用户取消
- }
-
- closingRequest.value = true
- try {
- await closeRequest(req.id)
- ElMessage.success(`审批单 ${req.request_no} 已完结`)
- // 完结后刷新列表并清空当前选择
- selectedRequest.value = null
- await loadApprovalRequests()
- } catch (err: any) {
- ElMessage.error(err?.msg || err?.message || '完结失败')
- } finally {
- closingRequest.value = false
- }
-}
-
// ★ 按单出库模式:校验扫码是否在计划内
const validateAgainstPlan = (scannedName: string, scannedSpec: string, scannedQty: number): string | null => {
const normalizedName = scannedName.trim()