diff --git a/src/views/modules/sampleTracking/projectProofTracking.vue b/src/views/modules/sampleTracking/projectProofTracking.vue
index 7f8b082..f1b0573 100644
--- a/src/views/modules/sampleTracking/projectProofTracking.vue
+++ b/src/views/modules/sampleTracking/projectProofTracking.vue
@@ -191,6 +191,15 @@
>
{{ scope.row[item.actualField] || '' }}
+ ↶
{
+ const rollbackRemark = rollbackProofingComplete
+ ? '撤回Delivery&Package已完成并回退打样状态'
+ : '表格一键回退为未完成'
+ const rollbackSuccessMsg = rollbackProofingComplete
+ ? 'Delivery&Package已撤回,打样状态恢复为进行中'
+ : '工序状态已回退为未完成'
// 仅回退状态,保留当前实际完成日期,避免误回退时丢失用户已维护的日期信息。
this.updateProcessFromTable(row, processCol, {
status: '未完成',
actualDate: currentActualDate,
- remark: '表格一键回退为未完成'
- }, false, '工序状态已回退为未完成')
+ remark: rollbackRemark
+ }, false, rollbackSuccessMsg)
}).catch(() => {})
},
+ isDeliveryPackageProcess (processCol) {
+ if (!processCol || processCol.code == null) {
+ return false
+ }
+ return String(processCol.code).trim().toLowerCase() === 'deliverypackage'
+ },
+ canRollbackProofingComplete (row, processCol) {
+ if (!row || !processCol) {
+ return false
+ }
+ if (!this.isProofingFinishedForTrackingStatus(row)) {
+ return false
+ }
+ if (!this.isDeliveryPackageProcess(processCol)) {
+ return false
+ }
+ return this.isProcessStatusComplete(row, processCol)
+ },
+ getRollbackProofingNoDisplay (row) {
+ if (!row) {
+ return '-'
+ }
+ const proofingNo = row.proofingNo == null ? '' : String(row.proofingNo).trim()
+ if (proofingNo) {
+ return proofingNo
+ }
+ if (row.trackingId != null && row.trackingId !== '') {
+ return `TrackingID:${row.trackingId}`
+ }
+ return '-'
+ },
updateProcessFromTable (row, processCol, processData, silentSuccess, successMsg) {
if (!row || !processCol || !row.trackingId) {
this.$message.error('工序参数缺失')
@@ -6199,6 +6251,7 @@ export default {
min-width: 74px;
text-align: center;
color: #606266;
+ margin-left: 18px;
}
.process-complete-btn {
@@ -6206,6 +6259,11 @@ export default {
min-width: 12px;
}
+.process-rollback-btn {
+ padding: 4px 6px;
+ min-width: 12px;
+}
+
.comments-cell {
display: flex;
align-items: center;