功能调整

This commit is contained in:
huhao
2026-08-18 18:05:16 +08:00
parent b342fb971b
commit 47559d6ed2
17 changed files with 2677 additions and 246 deletions
+85 -12
View File
@@ -100,6 +100,26 @@
<text class="card__label">提交时间</text>
<text class="card__value">{{ fmtDateTime(form.SubmitDate) }}</text>
</view>
<view class="card__row">
<text class="card__label">审核状态</text>
<text class="card__value">{{ form.AuditStateText || '--' }}</text>
</view>
<view class="card__row">
<text class="card__label">班组审核人</text>
<text class="card__value">{{ form.TeamAuditManName || '--' }}</text>
</view>
<view class="card__row">
<text class="card__label">班组审核时间</text>
<text class="card__value">{{ fmtDateTime(form.TeamAuditDate) }}</text>
</view>
<view class="card__row">
<text class="card__label">专工审核人</text>
<text class="card__value">{{ form.ProfessionalAuditManName || '--' }}</text>
</view>
<view class="card__row">
<text class="card__label">专工审核时间</text>
<text class="card__value">{{ fmtDateTime(form.ProfessionalAuditDate) }}</text>
</view>
<!-- 焊前拍照 -->
<view class="card__row card__row--stack">
<text class="card__label">焊前拍照</text>
@@ -126,8 +146,12 @@
<!-- 底部按钮 -->
<view v-if="canEdit" class="bottom-btns">
<u-button class="btn-delete" size="medium" type="error" @click="handleDelete">删除</u-button>
<u-button class="btn-audit" size="medium" type="primary" @click="handleAudit">审核通过</u-button>
<u-button class="btn-delete" size="mini" type="error" :disabled="submitting" :loading="submitting"
@click="handleDelete">删除</u-button>
<u-button class="btn-audit" size="mini" type="primary" :disabled="submitting" :loading="submitting"
@click="handleTeamAudit">班组审核</u-button>
<u-button class="btn-audit" size="mini" type="primary" :disabled="submitting" :loading="submitting"
@click="handleProfessionalAudit">专工审核</u-button>
</view>
</view>
</template>
@@ -146,6 +170,7 @@
} from '@/store'
import {
reqPendingWeldingDailyDetail,
reqTeamAuditWeldingDaily,
reqAuditWeldingDaily,
reqDeleteWeldingDaily
} from '@/api/hj.js'
@@ -159,28 +184,35 @@
const tempDetailId = ref('')
const form = ref({})
const submitting = ref(false)
const auditState = computed(() => Number(form.value.AuditState))
const isTeamPending = computed(() => auditState.value === 0)
const isProfessionalPending = computed(() => auditState.value === 1 && !!form.value.TeamAuditDate)
// ===== 操作 =====
const handleAudit = () => {
const runAction = ({
title,
request
}) => {
if (submitting.value) return
uni.showModal({
title: '信息提示',
content: '确定审核通过该日报吗?',
content: `确定${title}该日报吗?`,
success: async ({
confirm
}) => {
if (!confirm) return
submitting.value = true
try {
await reqAuditWeldingDaily({
TempDetailIds: [tempDetailId.value],
AuditMan: userInfo.PersonId
})
await request()
} catch (err) {
return // 报错已由 request.js 统一 toast
submitting.value = false
return
}
uni.showToast({
title: '审核成功',
title: '操作成功',
icon: 'none'
})
submitting.value = false
setTimeout(() => {
uni.navigateBack()
}, 1500)
@@ -188,7 +220,28 @@
})
}
const handleTeamAudit = () => {
runAction({
title: '班组审核',
request: () => reqTeamAuditWeldingDaily({
TempDetailIds: [tempDetailId.value],
AuditMan: userInfo.PersonId
})
})
}
const handleProfessionalAudit = () => {
runAction({
title: '专工审核',
request: () => reqAuditWeldingDaily({
TempDetailIds: [tempDetailId.value],
AuditMan: userInfo.PersonId
})
})
}
const handleDelete = () => {
if (submitting.value) return
uni.showModal({
title: '信息提示',
content: '确定删除该日报吗?',
@@ -196,17 +249,20 @@
confirm
}) => {
if (!confirm) return
submitting.value = true
try {
await reqDeleteWeldingDaily({
TempDetailIds: [tempDetailId.value]
})
} catch (err) {
return // 报错已由 request.js 统一 toast
submitting.value = false
return
}
uni.showToast({
title: '删除成功',
icon: 'none'
})
submitting.value = false
setTimeout(() => {
uni.navigateBack()
}, 1500)
@@ -247,6 +303,7 @@
.detail-page {
background: #f0f2f5;
padding-bottom: calc(140rpx + env(safe-area-inset-bottom));
}
// ===== 焊口主标识(同 daily_paper) =====
@@ -338,4 +395,20 @@
}
}
}
.bottom-btns {
padding: 16rpx 20rpx;
padding-bottom: calc(16rpx + env(safe-area-inset-bottom));
gap: 12rpx;
z-index: 20;
:deep(.u-btn) {
flex: 1;
min-width: 0;
height: 64rpx;
margin: 0;
padding: 0 8rpx !important;
font-size: 24rpx;
}
}
</style>