style(web): 更新差旅报销创建页面样式和业务脚本,增强前端交互和状态管理
This commit is contained in:
@@ -264,16 +264,17 @@
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<div v-if="resolveReviewPrimaryAction(message.reviewPayload) || message.draftPayload?.claim_no" class="review-footer-actions">
|
||||
<div v-if="resolveReviewSubmitActions(message.reviewPayload).length || message.draftPayload?.claim_no" class="review-footer-actions">
|
||||
<div class="review-footer-btn-row">
|
||||
<button
|
||||
v-if="resolveReviewPrimaryAction(message.reviewPayload)"
|
||||
v-for="action in resolveReviewSubmitActions(message.reviewPayload)"
|
||||
:key="`${message.id}-${action.action_type}`"
|
||||
type="button"
|
||||
class="review-footer-btn primary"
|
||||
:class="['review-footer-btn', action.emphasis === 'primary' ? 'primary' : '']"
|
||||
:disabled="reviewActionBusy"
|
||||
@click="handleReviewAction(message, resolveReviewPrimaryAction(message.reviewPayload))"
|
||||
@click="handleReviewAction(message, action)"
|
||||
>
|
||||
{{ buildReviewPrimaryButtonLabel(message.reviewPayload, message.draftPayload) }}
|
||||
{{ action.label || buildReviewPrimaryButtonLabel(message.reviewPayload, message.draftPayload) }}
|
||||
</button>
|
||||
|
||||
<button
|
||||
@@ -290,7 +291,7 @@
|
||||
type="button"
|
||||
class="review-footer-btn"
|
||||
:disabled="submitting || reviewActionBusy"
|
||||
@click="triggerFileUpload"
|
||||
@click="triggerFileUpload(message.reviewPayload.document_cards?.length ? 'composer-continue' : 'composer')"
|
||||
>
|
||||
{{ message.reviewPayload.document_cards?.length ? '继续上传票据' : '上传票据' }}
|
||||
</button>
|
||||
@@ -599,6 +600,18 @@
|
||||
>
|
||||
{{ scene }}
|
||||
</button>
|
||||
<input
|
||||
v-if="reviewInlineForm.scene_label === REVIEW_SCENE_OTHER_OPTION"
|
||||
v-model="reviewInlineForm.reason_value"
|
||||
class="review-inline-input review-inline-select-custom"
|
||||
:class="{ invalid: Boolean(reviewInlineErrors[item.key]) }"
|
||||
type="text"
|
||||
placeholder="请输入具体事由"
|
||||
@click.stop
|
||||
@input="clearInlineReviewFieldError(item.key)"
|
||||
@blur="commitInlineReviewEditor"
|
||||
@keydown.enter.prevent="commitInlineReviewEditor"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
<strong v-else :title="item.value">{{ item.value }}</strong>
|
||||
@@ -905,6 +918,30 @@
|
||||
@confirm="confirmCancelReview"
|
||||
/>
|
||||
|
||||
<Transition name="assistant-modal">
|
||||
<div v-if="uploadDecisionDialogOpen" class="assistant-overlay review-overlay">
|
||||
<section class="review-confirm-modal review-upload-decision-modal">
|
||||
<div class="review-upload-decision-copy">
|
||||
<span class="assistant-badge">上传票据</span>
|
||||
<h3>检测到你已有单据事件</h3>
|
||||
<p>这次新上传的附件需要先确认处理方式。你可以继续归集到上一笔单据,也可以重新开启一张新单据。</p>
|
||||
</div>
|
||||
|
||||
<div class="review-confirm-actions review-upload-decision-actions">
|
||||
<button type="button" class="primary-dialog-btn" :disabled="submitting || reviewActionBusy" @click="continueExistingUpload">
|
||||
继续
|
||||
</button>
|
||||
<button type="button" class="secondary-dialog-btn" :disabled="submitting || reviewActionBusy" @click="createNewUploadDocument">
|
||||
新单据
|
||||
</button>
|
||||
<button type="button" class="secondary-dialog-btn" :disabled="submitting || reviewActionBusy" @click="closeUploadDecisionDialog">
|
||||
取消
|
||||
</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</Transition>
|
||||
|
||||
<Transition name="assistant-modal">
|
||||
<div v-if="documentPreviewDialog.open" class="assistant-overlay review-overlay">
|
||||
<section class="review-preview-modal">
|
||||
|
||||
Reference in New Issue
Block a user