mirror of
https://git.hmsn.ink/kospo/svcm/oa.git
synced 2026-03-19 19:25:11 +09:00
Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -281,13 +281,11 @@ const onFileChange = (e, idx) => {
|
||||
}
|
||||
|
||||
function removeFile(idx) {
|
||||
pbAtts.value[idx] = null // 신규 파일 제거
|
||||
params.contAtts[idx] = null // 기존 파일도 제거(화면상 표시 안 됨)
|
||||
pbAtts.value[idx] = null
|
||||
params.contAtts[idx] = null
|
||||
}
|
||||
|
||||
// [추가] 다운로드 버튼: 기존 파일 다운로드
|
||||
function downloadFile(file) {
|
||||
// file.path가 실제 다운로드 가능한 URL이면 바로 열기
|
||||
console.log(file)
|
||||
file.path = `https://svcm.hmsn.ink/api/cont/${file.contNo}/${file.fileOrd}`
|
||||
window.open(file.path, '_blank')
|
||||
@@ -657,9 +655,30 @@ const onChangeSign = async() => {
|
||||
/>
|
||||
<span class="file-cta">파일선택</span>
|
||||
</label>
|
||||
<span style="flex:1; margin-right: 10px;">
|
||||
<span style="flex:0.8; margin-right: 10px;">
|
||||
{{ pbAtts[idx]?.logiFnm || params.contAtts?.[idx]?.logiFnm || '' }}
|
||||
</span>
|
||||
<div style="flex:0.5;">
|
||||
<template v-if="pbAtts[idx] || params.contAtts?.[idx]">
|
||||
<VButton
|
||||
v-if="params.contAtts?.[idx]"
|
||||
color="primary"
|
||||
size="big"
|
||||
style="margin-right:8px; width: 30%"
|
||||
@click="downloadFile(params.contAtts[idx])"
|
||||
>
|
||||
다운로드
|
||||
</VButton>
|
||||
<VButton
|
||||
color="danger"
|
||||
size="big"
|
||||
style="width: 10%"
|
||||
@click="removeFile(idx)"
|
||||
>
|
||||
삭제
|
||||
</VButton>
|
||||
</template>
|
||||
</div>
|
||||
<!-- 설명/인지세 안내는 등록폼과 동일하게 -->
|
||||
<span v-if="input.description != '인지세 납부확인서'" style="flex:2; color: #666;">
|
||||
{{ input.description }}
|
||||
@@ -668,56 +687,9 @@ const onChangeSign = async() => {
|
||||
{{ input.description }}
|
||||
<span style="color:red">(계약금액이 1,000만원 이상일 경우 인지세 납부확인서 첨부가 필수입니다.)</span>
|
||||
</span>
|
||||
<div>
|
||||
<template v-if="pbAtts[idx] || params.contAtts?.[idx]">
|
||||
<VButton
|
||||
v-if="params.contAtts?.[idx]"
|
||||
color="primary"
|
||||
size="big"
|
||||
style="margin-right:8px; width: 10%"
|
||||
@click="downloadFile(params.contAtts[idx])"
|
||||
>
|
||||
다운로드
|
||||
</VButton>
|
||||
<VButton
|
||||
color="danger"
|
||||
size="big"
|
||||
style="width: 10%"
|
||||
@click="removeFile(idx)"
|
||||
>
|
||||
삭제
|
||||
</VButton>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<!-- <td colspan="7">-->
|
||||
<!-- <div v-if="showFileInputs" class="file-upload-list" style="margin-top:10px;">-->
|
||||
<!-- <div-->
|
||||
<!-- v-for="(input, idx) in fileInputs"-->
|
||||
<!-- :key="idx"-->
|
||||
<!-- style="display: flex; align-items: center; margin-bottom: 8px;"-->
|
||||
<!-- >-->
|
||||
<!-- <!– 파일선택 –>-->
|
||||
<!-- <label class="file-label" style="margin-right: 10px;">-->
|
||||
<!-- <input-->
|
||||
<!-- type="file"-->
|
||||
<!-- class="file-input"-->
|
||||
<!-- @change="(e) => onFileChange(e, idx)"-->
|
||||
<!-- />-->
|
||||
<!-- <span class="file-cta">파일선택</span>-->
|
||||
<!-- </label>-->
|
||||
<!-- <span style="flex:1; margin-right: 10px;">-->
|
||||
<!-- {{ pbAtts[idx] == null ? '' : pbAtts[idx].logiFnm }}-->
|
||||
<!-- </span>-->
|
||||
<!-- <span v-if="input.description != '인지세 납부확인서'" style="flex:2; color: #666;">{{ input.description }}</span>-->
|
||||
<!-- <span v-if="input.description == '인지세 납부확인서'" style="flex:2; color: #666;">{{ input.description }}-->
|
||||
<!-- <span style="color:red" >{{"(계약금액이 1,000만원 이상일 경우 인지세 납부확인서 첨부가 필수입니다.)"}}</span>-->
|
||||
<!-- </span>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </td>-->
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -788,9 +760,6 @@ const onChangeSign = async() => {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
button:nth-child(2) {
|
||||
background-color: #AB9A6c;
|
||||
}
|
||||
button:nth-child(3) {
|
||||
background-color: silver;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user