Merge branch 'refs/heads/featrue/0526-update'

This commit is contained in:
Yesol Choi
2025-05-27 13:02:48 +09:00
3 changed files with 24 additions and 29 deletions

View File

@@ -1,7 +1,7 @@
<script setup lang="ts"> <script setup lang="ts">
import {deletePrcsFile, getPrcsFileDown, savePrice} from '/src/service/priceApi' import {deletePrcsFile, getPrcsFileDown, savePrice} from '/src/service/priceApi'
import {type iPbAtt, Person} from '/@src/utils/types' import {type iPbAtt, Person} from '/@src/utils/types'
import {formatBizNum,formatDate} from "/@src/utils/common/comfunc.ts"; import {formatBizNum,formatDatefromString} from "/@src/utils/common/comfunc.ts";
const notyf = useNotyf() const notyf = useNotyf()
const showTable = ref(false) const showTable = ref(false)
@@ -106,8 +106,8 @@ const savePriceOne = async () => {
cateCd : params.cateSelect, cateCd : params.cateSelect,
title: generalParams.title, title: generalParams.title,
content: generalParams.content, content: generalParams.content,
regSdat: formatDate(generalParams.regSdat), regSdat: formatDatefromString(generalParams.regSdat),
regEdat: formatDate(generalParams.regEdat), regEdat: formatDatefromString(generalParams.regEdat),
prvYn: true, prvYn: true,
prvRsn : "", prvRsn : "",
prvPwd : "", prvPwd : "",
@@ -266,7 +266,7 @@ function onInput(row, column){
</tr> </tr>
<tr> <tr>
<td>내용</td> <td>내용</td>
<td colspan="9"> <td colspan="10">
<div class="column is-fullhd"> <div class="column is-fullhd">
<VField class="pr-2"> <VField class="pr-2">
<VControl> <VControl>
@@ -304,14 +304,16 @@ function onInput(row, column){
> >
<template #body-cell="{ row, column, index, value }"> <template #body-cell="{ row, column, index, value }">
<div> <div>
<!-- 다른 editable 컬럼은 input --> <VField class="pr-3" v-if="column.editable">
<VControl>
<input <input
v-if="column.editable"
v-model="row[column.key]" v-model="row[column.key]"
class="editable-input" class="editable-input"
ref="prcsBizsRef" ref="prcsBizsRef"
@blur="onInput(row, column)" @blur="onInput(row, column)"
/> />
</VControl>
</VField>
<span v-else-if="column.key=='num'">{{index + 1}}</span> <span v-else-if="column.key=='num'">{{index + 1}}</span>
<!-- readonly 출력 --> <!-- readonly 출력 -->
<span v-else class="lnil lnil-close" <span v-else class="lnil lnil-close"
@@ -384,15 +386,15 @@ function onInput(row, column){
</VButton> </VButton>
</div> </div>
</template> </template>
<template #action> <template #action="{ close }">
<VButton color="primary"> <VButton color="primary" @click="close">
등록 등록
</VButton> </VButton>
</template> </template>
</VModal> </VModal>
</td> </td>
<td>등록기간</td> <td>등록기간</td>
<td colspan="5"> <td colspan="6">
<div class="columns"> <div class="columns">
<div class="column is-5"> <div class="column is-5">
<VDatePicker <VDatePicker
@@ -445,7 +447,7 @@ function onInput(row, column){
<td>첨부파일</td> <td>첨부파일</td>
<td colspan="3"> <td colspan="3">
<VField> <VField>
<div class="column is-6"> <div class="form-label">
<div class="file has-name is-fullwidth"> <div class="file has-name is-fullwidth">
<input <input
class="file-input hide" class="file-input hide"
@@ -458,6 +460,8 @@ function onInput(row, column){
<span>파일업로드</span> <span>파일업로드</span>
</VButton> </VButton>
</VLabel> </VLabel>
</div>
</div>
<VControl> <VControl>
<div <div
v-for="(f, i) in pbAtts" v-for="(f, i) in pbAtts"
@@ -465,18 +469,13 @@ function onInput(row, column){
class="content estimate-file-wrapper" class="content estimate-file-wrapper"
> >
<div class="estimate-file-name"> <div class="estimate-file-name">
{{ f.logiFnm }} {{ f.logiFnm }}{{" ("}}{{Math.ceil(f.size / 1024)}}kb{{")"}}
</div>
<div class="estimate-file-size">
{{ Math.ceil(f.size / 1024) }}kb
</div> </div>
<div> <div>
<i class="fa fa-trash estimate-file-delete" @click="onFilDelete( i, f.fileOrd)" /> <i class="fa fa-trash estimate-file-delete" @click="onFilDelete( i, f.fileOrd)" />
</div> </div>
</div> </div>
</VControl> </VControl>
</div>
</div>
</VField> </VField>
</td> </td>
</tr> </tr>

View File

@@ -40,6 +40,7 @@ const params = reactive({
cateSelect: '', cateSelect: '',
prcsNo: '', // 키값 prcsNo: '', // 키값
stCdFalg: false, // 버튼 컴포넌트화 stCdFalg: false, // 버튼 컴포넌트화
svyYn: false,
stCd:'',//결재상태 코드{ 등록중:0100[회수버튼], stCd:'',//결재상태 코드{ 등록중:0100[회수버튼],
// 회수: 0300, 반려: 0400, 등록 완료: 0200 } // 회수: 0300, 반려: 0400, 등록 완료: 0200 }
prcsAttsColumn:[ //첨부파일 입력 prcsAttsColumn:[ //첨부파일 입력
@@ -76,6 +77,7 @@ const params = reactive({
}) })
function getDetailList(arg){ function getDetailList(arg){
console.log("arg",arg)//svy_yn
if(!props.prcsNo){ if(!props.prcsNo){
params.stCdFalg = true params.stCdFalg = true
} }
@@ -103,6 +105,7 @@ function getDetailList(arg){
attendNm: req.attendNm attendNm: req.attendNm
})) //비고 데이터 없음, 승인일자 없음 todo })) //비고 데이터 없음, 승인일자 없음 todo
params.prcsAtts = arg.prcsAtts params.prcsAtts = arg.prcsAtts
params.svyYn = arg.svyYn
} }
const updateState = async () => { const updateState = async () => {
@@ -354,6 +357,7 @@ const onPrcsFileDownload = async (prcsNo: string, fileOrd: number, logiFnm: stri
<tr> <tr>
<td>견적요청</td> <td>견적요청</td>
<td colspan="6"> <td colspan="6">
<slot name="status" v-if="!params.svyYn">
<div style="display: flex; justify-content: flex-end; gap: 8px;"> <div style="display: flex; justify-content: flex-end; gap: 8px;">
<!-- <VButton--> <!-- <VButton-->
<!-- color="primary"--> <!-- color="primary"-->
@@ -372,6 +376,7 @@ const onPrcsFileDownload = async (prcsNo: string, fileOrd: number, logiFnm: stri
가격조사 완료 가격조사 완료
</VButton> </VButton>
</div> </div>
</slot>
<div class="mt-2"> <div class="mt-2">
<ComVFlexTable <ComVFlexTable
:key="params.prcsBizs.length" :key="params.prcsBizs.length"

View File

@@ -470,9 +470,9 @@ const onPrcsFileDownload = async (prcsNo: string, fileOrd: number, logiFnm: stri
</tr> </tr>
<tr> <tr>
<td>첨부파일</td> <td>첨부파일</td>
<td colspan="4"> <td colspan="3">
<VField> <VField>
<div class="column is-6 form-label"> <div class="form-label">
<div class="file has-name is-fullwidth"> <div class="file has-name is-fullwidth">
<input <input
class="file-input hide" class="file-input hide"
@@ -494,10 +494,7 @@ const onPrcsFileDownload = async (prcsNo: string, fileOrd: number, logiFnm: stri
class="content estimate-file-wrapper" class="content estimate-file-wrapper"
> >
<div class="estimate-file-name"> <div class="estimate-file-name">
{{ f.logiFnm }} {{ f.logiFnm }}{{" ("}}{{Math.ceil(f.size / 1024)}}kb{{")"}}
</div>
<div class="estimate-file-size">
{{ Math.ceil(f.size / 1024) }}kb
</div> </div>
<div> <div>
<i class="fa fa-trash estimate-file-delete" @click="onFilDelete(f.bizNo, i, f.fileOrd)" /> <i class="fa fa-trash estimate-file-delete" @click="onFilDelete(f.bizNo, i, f.fileOrd)" />
@@ -514,14 +511,8 @@ const onPrcsFileDownload = async (prcsNo: string, fileOrd: number, logiFnm: stri
:key="f.logiFnm" :key="f.logiFnm"
class="content estimate-file-wrapper" class="content estimate-file-wrapper"
> >
<div>
<i class="fa fa-file-pdf estimate-file-img" style="font-size:40px;" />
</div>
<div class="estimate-file-name"> <div class="estimate-file-name">
{{ f.logiFnm }} {{ f.logiFnm }}{{" ("}}{{Math.ceil(f.size / 1024)}}kb{{")"}}
</div>
<div class="estimate-file-size">
{{ Math.ceil(f.size / 1024) }}kb
</div> </div>
<div> <div>
<i class="fa fa-download estimate-file-download" @click="onPrcsFileDownload(f.prcsNo, f.fileOrd, f.logiFnm)" /> <i class="fa fa-download estimate-file-download" @click="onPrcsFileDownload(f.prcsNo, f.fileOrd, f.logiFnm)" />