init dev-push code ui base design
This commit is contained in:
@ -4,24 +4,28 @@
|
||||
<v-row ref="searchFilter">
|
||||
<v-col :cols="12">
|
||||
<v-card class="searchFilter">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col :cols="2">
|
||||
<v-row align="end" no-gutters>
|
||||
<v-col :cols="2.5">
|
||||
<InputText
|
||||
:parentPrgmId="myPrgmId"
|
||||
label="배치ID"
|
||||
valueNm="batchId"
|
||||
:searchOption="true"
|
||||
:iconShow="true"
|
||||
customClass="input-large"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="2">
|
||||
<v-col :cols="2.5">
|
||||
<InputText
|
||||
:parentPrgmId="myPrgmId"
|
||||
label="배치명"
|
||||
valueNm="batchNm"
|
||||
:searchOption="true"
|
||||
:iconShow="true"
|
||||
customClass="input-large"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="2">
|
||||
<v-col :cols="2.5">
|
||||
<component
|
||||
:is="'selectCodeList'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
@ -29,19 +33,21 @@
|
||||
:dataKey="'execRsltCd'"
|
||||
:sendParam="{ commGrpCd: 'CO_BATCH_EXEC_RSLT', useFg: '1' }"
|
||||
:addAll="true"
|
||||
:iconShow="true"
|
||||
customClass="select-large"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="2">
|
||||
<v-col :cols="2.5">
|
||||
<component
|
||||
:is="'Datepicker'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:label="'조회기간'"
|
||||
:customClass="'input-large'"
|
||||
/>
|
||||
</v-col>
|
||||
<v-spacer></v-spacer>
|
||||
<v-col :cols="4" class="text-right">
|
||||
<BtnSearch />
|
||||
<BtnExcelDownload :parentPrgmId="myPrgmId" :gridName="gridName" />
|
||||
<v-col :cols="2" class="text-right d-flex align-end justify-end ga-1" style="gap: 4px">
|
||||
<BtnSearch size="large" />
|
||||
<BtnExcelDownload :parentPrgmId="myPrgmId" :gridName="gridName" size="large" />
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
@ -57,10 +63,11 @@
|
||||
<div ref="gridParent" class="px-5 h100">
|
||||
<component
|
||||
:ref="gridName"
|
||||
:is="loadGrid ? 'Grid' : null"
|
||||
:is=" 'Grid' "
|
||||
:parentPrgmId="myPrgmId"
|
||||
:gridName="gridName"
|
||||
@getRowsData="getRowData"
|
||||
:dataPath="dataPathMock"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@ -133,10 +140,56 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
myPrgmId: myPrgmId,
|
||||
loadGrid: false,
|
||||
loadGrid: true,
|
||||
gridName: 'rowGrid',
|
||||
// rowGridOrigin: [],
|
||||
detailList: myDetail,
|
||||
dataPathMock : {
|
||||
'rowGrid': {
|
||||
column: [
|
||||
{ header: 'No.', name: 'batchLogSeq', align: 'center', width: 100 },
|
||||
{ header: '배치ID', name: 'batchId', align: 'center', width: 100 },
|
||||
{ header: '배치명', name: 'batchNm', align: 'left', width: 150 },
|
||||
{ header: '실행 일자', name: 'execDt', align: 'center', width: 80 },
|
||||
{
|
||||
header: '실행 결과',
|
||||
name: 'execRsltCd',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
// formatter({ value }) {
|
||||
// let retVal = '';
|
||||
// const newValue = _this.pageData.execRsltCdList.filter(
|
||||
// item => item.commCd == value,
|
||||
// );
|
||||
// if (newValue.length > 0) {
|
||||
// retVal = newValue[0].commCdNm;
|
||||
// }
|
||||
// return retVal;
|
||||
// },
|
||||
}, // "1": 프로그램, "2": 팝업
|
||||
{ header: '실행 로그', name: 'execLogCont', minWidth: 150 },
|
||||
{
|
||||
header: '배치 시작 일시',
|
||||
name: 'batchStrtDttm',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
header: '배치 종료 일시',
|
||||
name: 'batchEndDttm',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
},
|
||||
{ header: '등록자NO', name: 'regUserNo', width: 120 },
|
||||
{ header: '등록일시', name: 'regDttm', align: 'center', width: 160 },
|
||||
{ header: '수정자NO', name: 'procUserNo', width: 120 },
|
||||
{ header: '수정일시', name: 'procDttm', align: 'center', width: 160 },
|
||||
],
|
||||
data: dataMockExample,
|
||||
defaultRow: dataMockExample,
|
||||
option: {},
|
||||
},
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -195,6 +248,14 @@ export default {
|
||||
init() {
|
||||
// this.layoutInit();
|
||||
this.gridInit();
|
||||
|
||||
// _this.pageData = {
|
||||
// execRsltCdList: [
|
||||
// { commCd: '1', commCdNm: '성공' },
|
||||
// { commCd: '2', commCdNm: '실패' },
|
||||
// ],
|
||||
// };
|
||||
|
||||
},
|
||||
// layoutInit() {
|
||||
// const searchFilterHeight = this.$refs.searchFilter.offsetHeight;
|
||||
@ -307,10 +368,13 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
async getRowData(data) {
|
||||
// async getRowData(data) {
|
||||
async getRowData() {
|
||||
console.log("something")
|
||||
this.setPageData({
|
||||
rowGridSelectKey: data.rowKey,
|
||||
rowGridSelectData: data,
|
||||
// rowGridSelectKey: data.rowKey,
|
||||
rowGridSelectKey: 1,
|
||||
rowGridSelectData: fakeRowData,
|
||||
});
|
||||
},
|
||||
compareData(type, newDt) {
|
||||
@ -417,16 +481,86 @@ const defaultData = {
|
||||
},
|
||||
};
|
||||
|
||||
const dataMockExample = [
|
||||
{
|
||||
batchLogSeq: 1,
|
||||
batchId: 'BATCH001',
|
||||
batchNm: '일일 데이터 백업',
|
||||
execDt: '2025-07-15',
|
||||
execRsltCd: '1', // sẽ được formatter thành "성공" hoặc tương tự
|
||||
execLogCont: '백업 완료. 오류 없음.',
|
||||
batchStrtDttm: '2025-07-15 01:00:00',
|
||||
batchEndDttm: '2025-07-15 01:30:00',
|
||||
regUserNo: 'admin01',
|
||||
regDttm: '2025-07-15 01:00:00',
|
||||
procUserNo: 'admin02',
|
||||
procDttm: '2025-07-15 01:35:00',
|
||||
},
|
||||
{
|
||||
batchLogSeq: 2,
|
||||
batchId: 'BATCH002',
|
||||
batchNm: '월간 리포트 생성',
|
||||
execDt: '2025-07-01',
|
||||
execRsltCd: '2',
|
||||
execLogCont: '리포트 생성 중 오류 발생: 파일 접근 실패.',
|
||||
batchStrtDttm: '2025-07-01 03:00:00',
|
||||
batchEndDttm: '2025-07-01 03:10:00',
|
||||
regUserNo: 'reportUser',
|
||||
regDttm: '2025-07-01 03:00:00',
|
||||
procUserNo: 'admin03',
|
||||
procDttm: '2025-07-01 03:15:00',
|
||||
},
|
||||
{
|
||||
batchLogSeq: 3,
|
||||
batchId: 'BATCH003',
|
||||
batchNm: '사용자 통계 갱신',
|
||||
execDt: '2025-07-14',
|
||||
execRsltCd: '1',
|
||||
execLogCont: '통계 갱신 완료.',
|
||||
batchStrtDttm: '2025-07-14 23:00:00',
|
||||
batchEndDttm: '2025-07-14 23:20:00',
|
||||
regUserNo: 'statUser',
|
||||
regDttm: '2025-07-14 23:00:00',
|
||||
procUserNo: 'admin01',
|
||||
procDttm: '2025-07-14 23:25:00',
|
||||
},
|
||||
];
|
||||
|
||||
const fakeRowData = {
|
||||
rowKey: 1,
|
||||
batchLogSeq: 1,
|
||||
batchId: 'BATCH001',
|
||||
batchNm: '일일 데이터 백업',
|
||||
execDt: '2025-07-15',
|
||||
execRsltCd: '1',
|
||||
execLogCont: JSON.stringify({
|
||||
session: {
|
||||
userNo: 'admin01',
|
||||
userNm: '관리자',
|
||||
comId: 'SKCC',
|
||||
locale: 'ko_KR',
|
||||
},
|
||||
batch: {
|
||||
comId: 'SKCC',
|
||||
totStdDt: '20230110',
|
||||
},
|
||||
}),
|
||||
batchStrtDttm: '2025-07-15 01:00:00',
|
||||
batchEndDttm: '2025-07-15 01:30:00',
|
||||
regUserNo: 'admin01',
|
||||
regDttm: '2025-07-15 01:00:00',
|
||||
procUserNo: 'admin02',
|
||||
procDttm: '2025-07-15 01:35:00',
|
||||
};
|
||||
|
||||
|
||||
const myDetail = [
|
||||
{
|
||||
type: 'TextArea',
|
||||
valueNm: 'execLogCont',
|
||||
readonly: true,
|
||||
cols: 12,
|
||||
class: 'py-2',
|
||||
class: 'py-2 transparent',
|
||||
},
|
||||
];
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -4,45 +4,38 @@
|
||||
<v-row ref="searchFilter">
|
||||
<v-col :cols="12">
|
||||
<v-card class="searchFilter">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col :cols="2">
|
||||
<InputText
|
||||
:parentPrgmId="myPrgmId"
|
||||
label="배치ID"
|
||||
valueNm="batchId"
|
||||
:searchOption="true"
|
||||
/>
|
||||
<v-row align="end" no-gutters>
|
||||
<v-col :cols="2.5">
|
||||
<InputText :parentPrgmId="myPrgmId" label="배치ID" valueNm="batchId" :searchOption="true"
|
||||
:customClass="'input-large'" />
|
||||
</v-col>
|
||||
<v-col :cols="2">
|
||||
<InputText
|
||||
:parentPrgmId="myPrgmId"
|
||||
label="배치명"
|
||||
valueNm="batchNm"
|
||||
:searchOption="true"
|
||||
/>
|
||||
<v-col :cols="2.5">
|
||||
<InputText :parentPrgmId="myPrgmId" label="배치명" valueNm="batchNm" :searchOption="true"
|
||||
:customClass="'input-large'" />
|
||||
</v-col>
|
||||
<v-col :cols="3">
|
||||
<component
|
||||
<v-col :cols="2.5">
|
||||
<!-- <component
|
||||
:is="'selectCodeList'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:label="'배치 실행 구분'"
|
||||
:dataKey="'searchBatchExecTp'"
|
||||
:sendParam="{ commGrpCd: 'CO_BATCH_EXEC_TP', useFg: '1' }"
|
||||
:addAll="true"
|
||||
/>
|
||||
:customClass="'select-large'"
|
||||
/> -->
|
||||
</v-col>
|
||||
<v-col :cols="3">
|
||||
<component
|
||||
<v-col :cols="2.5">
|
||||
<!-- <component
|
||||
:is="'selectCodeList'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:label="'사용여부'"
|
||||
:dataKey="'searchUseFg'"
|
||||
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="2" class="text-right">
|
||||
<BtnSearch />
|
||||
:customClass="'select-large'"
|
||||
/> -->
|
||||
</v-col>
|
||||
<BtnSearch size="large" />
|
||||
|
||||
</v-row>
|
||||
</v-card>
|
||||
</v-col>
|
||||
@ -50,77 +43,47 @@
|
||||
|
||||
<v-row ref="contents">
|
||||
<!-- 배치 리스트 -->
|
||||
<v-col :cols="5" class="h100" style="height: calc(100vh - 180px);">
|
||||
<v-col :cols="6" class="h100">
|
||||
<v-card class="pb-5">
|
||||
<div class="d-flex align-center justify-space-between pa-5">
|
||||
<div class="d-flex align-center justify-space-between pa-4">
|
||||
<!-- <v-card-title>
|
||||
<span class="tit ft-size_20 ft-weight_600">배치 리스트</span>
|
||||
</v-card-title> -->
|
||||
<v-card-title class="pa-0"> 배치 리스트 </v-card-title>
|
||||
<!-- <v-card-actions> -->
|
||||
<Buttons
|
||||
:parentPrgmId="myPrgmId"
|
||||
:bindingData="gridName"
|
||||
:detailList="detailList"
|
||||
:btnActionsFnc="btnActions"
|
||||
/>
|
||||
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :detailList="detailList"
|
||||
:btnActionsFnc="btnActions" />
|
||||
</div>
|
||||
<div class="px-5" style="height:calc(100% - 70px);">
|
||||
<div class="px-4">
|
||||
<div ref="gridParent" class="h100 w100">
|
||||
<component
|
||||
:ref="gridName"
|
||||
:is="loadGrid ? 'Grid' : null"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:gridName="gridName"
|
||||
@getRowsData="getRowData"
|
||||
/>
|
||||
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :parentPrgmId="myPrgmId"
|
||||
:gridName="gridName" @getRowsData="getRowData" :dataPath="dataPathExample" />
|
||||
</div>
|
||||
<!-- </v-card-actions> -->
|
||||
</div>
|
||||
</v-card>
|
||||
</v-col>
|
||||
<!-- 배치 상세 -->
|
||||
<v-col :cols="7" class="h100" style="height: calc(100vh - 180px);">
|
||||
<v-col :cols="6" class="h100">
|
||||
<v-card class="pd-y-20 h100">
|
||||
<v-card-title class="d-flex justify-space-between align-end">
|
||||
<v-card-title class="d-flex justify-space-between align-end pa-4">
|
||||
<span class="tit ft-size_20 ft-weight_600">배치 상세</span>
|
||||
</v-card-title>
|
||||
<v-card-actions>
|
||||
<div
|
||||
ref="gridParent"
|
||||
class="w100"
|
||||
style="height: calc(100vh - 380px); padding-left:15px"
|
||||
>
|
||||
<component
|
||||
:is="'Form'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:detailList="detailList"
|
||||
@gridEditingFinish="gridEditingFinish"
|
||||
@inputClick="inputClick"
|
||||
/>
|
||||
<div ref="gridParent" class="w100 pa-2 pb-6">
|
||||
<component :is="'Form'" :parentPrgmId="myPrgmId" :detailList="detailList"
|
||||
@gridEditingFinish="gridEditingFinish" @inputClick="inputClick" />
|
||||
</div>
|
||||
</v-card-actions>
|
||||
</v-card>
|
||||
</v-col>
|
||||
<v-dialog
|
||||
ref="popModal"
|
||||
v-model="dialog"
|
||||
width="700"
|
||||
overlay-color="#000"
|
||||
overlay-opacity="0.8"
|
||||
scrollable
|
||||
>
|
||||
<v-dialog ref="popModal" v-model="dialog" width="700" overlay-color="#000" overlay-opacity="0.8" scrollable>
|
||||
<v-card style="height: 100%">
|
||||
<v-card-title
|
||||
class="v-card__title d-flex align-center justify-space-between"
|
||||
>
|
||||
<v-card-title class="v-card__title d-flex align-center justify-space-between">
|
||||
<span class="custom-title-4">DB 프로시져 파라메터 설정</span>
|
||||
<div>
|
||||
<Buttons
|
||||
:parentPrgmId="myPrgmId"
|
||||
:bindingData="gridNameParam"
|
||||
:btnActionsFnc="btnActionsParam"
|
||||
/>
|
||||
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridNameParam"
|
||||
:btnActionsFnc="btnActionsParam" />
|
||||
</div>
|
||||
</v-card-title>
|
||||
<div class="pa-5">
|
||||
@ -132,23 +95,16 @@
|
||||
<v-card-text style="height: 300px;">
|
||||
<div id="gridParent" class="mt-6" style="height:calc(100% - 36px);">
|
||||
<div style="height:calc(100% - 36px);">
|
||||
<Grid
|
||||
:ref="gridNameParam"
|
||||
:is="paramLoadGrid && dialog ? 'Grid' : null"
|
||||
:gridName="gridNameParam"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:editorGrid="true"
|
||||
@getRowsData="getGridNameParamRowData"
|
||||
/>
|
||||
<Grid :ref="gridNameParam" :is="paramLoadGrid && dialog ? 'Grid' : null"
|
||||
:gridName="gridNameParam" :parentPrgmId="myPrgmId" :editorGrid="true"
|
||||
@getRowsData="getGridNameParamRowData" />
|
||||
</div>
|
||||
</div>
|
||||
</v-card-text>
|
||||
<v-divider></v-divider>
|
||||
<v-card-actions>
|
||||
<v-spacer></v-spacer>
|
||||
<v-btn color="primary" dark @click="setParamChangeData()"
|
||||
>확인</v-btn
|
||||
>
|
||||
<v-btn color="primary" dark @click="setParamChangeData()">확인</v-btn>
|
||||
<v-btn color="primary" dark @click="dialog = false">닫기</v-btn>
|
||||
</v-card-actions>
|
||||
</v-card>
|
||||
@ -199,15 +155,76 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
myPrgmId: myPrgmId,
|
||||
loadGrid: false,
|
||||
loadGrid: true,
|
||||
gridName: 'rowGrid',
|
||||
dataPathExample: {
|
||||
"rowGrid": {
|
||||
data: [
|
||||
{
|
||||
"batchId": "BATCH001",
|
||||
"batchNm": "일일 데이터 백업",
|
||||
"batchExecTp": "자동 실행",
|
||||
"batchDupExecFg": "N",
|
||||
"useFg": "사용"
|
||||
},
|
||||
{
|
||||
"batchId": "BATCH002",
|
||||
"batchNm": "월간 리포트 생성",
|
||||
"batchExecTp": "수동 실행",
|
||||
"batchDupExecFg": "Y",
|
||||
"useFg": "사용"
|
||||
},
|
||||
{
|
||||
"batchId": "BATCH003",
|
||||
"batchNm": "로그 정리 작업",
|
||||
"batchExecTp": "자동 실행",
|
||||
"batchDupExecFg": "N",
|
||||
"useFg": "미사용"
|
||||
},
|
||||
{
|
||||
"batchId": "BATCH004",
|
||||
"batchNm": "사용자 통계 수집",
|
||||
"batchExecTp": "예약 실행",
|
||||
"batchDupExecFg": "Y",
|
||||
"useFg": "사용"
|
||||
},
|
||||
{
|
||||
"batchId": "BATCH005",
|
||||
"batchNm": "서버 상태 점검",
|
||||
"batchExecTp": "수동 실행",
|
||||
"batchDupExecFg": "N",
|
||||
"useFg": "미사용"
|
||||
}
|
||||
]
|
||||
|
||||
,
|
||||
column: [
|
||||
{ header: '배치ID', name: 'batchId', align: 'center', width: 100 },
|
||||
{ header: '배치명', name: 'batchNm', minWidth: 200 },
|
||||
{
|
||||
header: '배치 실행 구분',
|
||||
name: 'batchExecTp',
|
||||
align: 'left',
|
||||
minWidth: 190,
|
||||
},
|
||||
{ header: '배치 중복 여부', name: 'batchDupExecFg', hidden: true },
|
||||
{
|
||||
header: '사용여부',
|
||||
name: 'useFg',
|
||||
align: 'center',
|
||||
width: 145,
|
||||
},
|
||||
],
|
||||
|
||||
}
|
||||
},
|
||||
// rowGridOrigin: [],
|
||||
detailList: myDetail,
|
||||
|
||||
// 파라메터 셋팅용 변수
|
||||
dialog: false,
|
||||
gridNameParam: 'paramGrid',
|
||||
paramLoadGrid: false,
|
||||
paramLoadGrid: true,
|
||||
selectedGridNameParamRow: null,
|
||||
};
|
||||
},
|
||||
@ -275,7 +292,7 @@ export default {
|
||||
}),
|
||||
init() {
|
||||
// this.layoutInit();
|
||||
this.gridInit();
|
||||
// this.gridInit();
|
||||
this.gridParamInit();
|
||||
},
|
||||
// layoutInit() {
|
||||
@ -367,7 +384,7 @@ export default {
|
||||
},
|
||||
async search() {
|
||||
// console.log("search");
|
||||
await this.getRowGridData();
|
||||
// await this.getRowGridData();
|
||||
await this.setPageData({
|
||||
isFind: false,
|
||||
});
|
||||
@ -410,12 +427,12 @@ export default {
|
||||
//rowKey: this.chkRowGridSelectKey || 0,
|
||||
rowKey:
|
||||
this.pageData.rowGridSelectKey == '' ||
|
||||
this.pageData.rowGridSelectKey == null
|
||||
this.pageData.rowGridSelectKey == null
|
||||
? 0
|
||||
: this.pageData.rowGridSelectKey ==
|
||||
this.$refs[this.gridName].getData().length - 1
|
||||
? this.pageData.rowGridSelectKey
|
||||
: 0,
|
||||
this.$refs[this.gridName].getData().length - 1
|
||||
? this.pageData.rowGridSelectKey
|
||||
: 0,
|
||||
setScroll: true,
|
||||
});
|
||||
}
|
||||
@ -596,6 +613,7 @@ export default {
|
||||
}
|
||||
},
|
||||
gridParamInit() {
|
||||
|
||||
const gridHeight = this.$refs.gridParent.offsetHeight - 36;
|
||||
const myOptions = {
|
||||
columnOptions: {
|
||||
@ -611,20 +629,20 @@ export default {
|
||||
gridKey: this.gridNameParam,
|
||||
value: myOptions,
|
||||
});
|
||||
setTimeout(() => {});
|
||||
// setTimeout(() => { });
|
||||
|
||||
let modeList = [];
|
||||
const modeIn = { text: 'IN', value: 'IN' };
|
||||
const modeOut = { text: 'OUT', value: 'OUT' };
|
||||
modeList.push(modeIn);
|
||||
modeList.push(modeOut);
|
||||
let typeList = [];
|
||||
const typeInt = { text: 'INT', value: 'int' };
|
||||
const typeStr = { text: 'STRING', value: 'str' };
|
||||
const typeFunc = { text: 'FUNCTION', value: 'function' };
|
||||
typeList.push(typeInt);
|
||||
typeList.push(typeStr);
|
||||
typeList.push(typeFunc);
|
||||
// let modeList = [];
|
||||
// const modeIn = { text: 'IN', value: 'IN' };
|
||||
// const modeOut = { text: 'OUT', value: 'OUT' };
|
||||
// modeList.push(modeIn);
|
||||
// modeList.push(modeOut);
|
||||
// let typeList = [];
|
||||
// const typeInt = { text: 'INT', value: 'int' };
|
||||
// const typeStr = { text: 'STRING', value: 'str' };
|
||||
// const typeFunc = { text: 'FUNCTION', value: 'function' };
|
||||
// typeList.push(typeInt);
|
||||
// typeList.push(typeStr);
|
||||
// typeList.push(typeFunc);
|
||||
|
||||
const myColumns = [
|
||||
{ header: 'ID', name: 'id', editor: 'text' },
|
||||
@ -646,27 +664,27 @@ export default {
|
||||
header: 'Type',
|
||||
name: 'type',
|
||||
align: 'center',
|
||||
formatter({ value }) {
|
||||
let retVal = '';
|
||||
switch (value) {
|
||||
case 'int':
|
||||
retVal = 'INT';
|
||||
break;
|
||||
case 'str':
|
||||
retVal = 'STRING';
|
||||
break;
|
||||
case 'function':
|
||||
retVal = 'FUNCTION';
|
||||
break;
|
||||
}
|
||||
return retVal;
|
||||
},
|
||||
editor: {
|
||||
type: 'select',
|
||||
options: {
|
||||
listItems: typeList,
|
||||
},
|
||||
},
|
||||
// formatter({ value }) {
|
||||
// let retVal = '';
|
||||
// switch (value) {
|
||||
// case 'int':
|
||||
// retVal = 'INT';
|
||||
// break;
|
||||
// case 'str':
|
||||
// retVal = 'STRING';
|
||||
// break;
|
||||
// case 'function':
|
||||
// retVal = 'FUNCTION';
|
||||
// break;
|
||||
// }
|
||||
// return retVal;
|
||||
// },
|
||||
// editor: {
|
||||
// type: 'select',
|
||||
// options: {
|
||||
// listItems: typeList,
|
||||
// },
|
||||
// },
|
||||
},
|
||||
{ header: '값', name: 'val', editor: 'text' },
|
||||
{ header: 'rowStat', name: 'rowStat', hidden: true },
|
||||
@ -676,56 +694,95 @@ export default {
|
||||
gridKey: this.gridNameParam,
|
||||
value: myColumns,
|
||||
});
|
||||
this.getRowParamData();
|
||||
this.paramLoadGrid = true;
|
||||
// this.getRowParamData();
|
||||
},
|
||||
getRowParamData() {
|
||||
this.paramLoadGrid = false;
|
||||
let res = [];
|
||||
// let res = [];
|
||||
|
||||
/* this.pageData.paramStrData 처리 */
|
||||
// console.log("this.pageData.paramStrData : ", JSON.parse(this.pageData.paramStrData));
|
||||
let rowData = {};
|
||||
if (
|
||||
this.pageData.paramStrData.startsWith('{') &&
|
||||
this.pageData.paramStrData.endsWith('}')
|
||||
) {
|
||||
rowData = JSON.parse(this.pageData.paramStrData);
|
||||
}
|
||||
var keys = Object.keys(rowData); //키를 가져옵니다. 이때, keys 는 반복가능한 객체가 됩니다.
|
||||
for (var i = 0; i < keys.length; i++) {
|
||||
var key = keys[i];
|
||||
res.push(rowData[key]);
|
||||
}
|
||||
// /* this.pageData.paramStrData 처리 */
|
||||
// // console.log("this.pageData.paramStrData : ", JSON.parse(this.pageData.paramStrData));
|
||||
// let rowData = {};
|
||||
// if (
|
||||
// this.pageData.paramStrData.startsWith('{') &&
|
||||
// this.pageData.paramStrData.endsWith('}')
|
||||
// ) {
|
||||
// rowData = JSON.parse(this.pageData.paramStrData);
|
||||
// }
|
||||
// var keys = Object.keys(rowData); //키를 가져옵니다. 이때, keys 는 반복가능한 객체가 됩니다.
|
||||
// for (var i = 0; i < keys.length; i++) {
|
||||
// var key = keys[i];
|
||||
// res.push(rowData[key]);
|
||||
// }
|
||||
|
||||
const newRes = res.map(item => {
|
||||
const newObj = {
|
||||
...item,
|
||||
rowStat: null,
|
||||
id: item.id || '',
|
||||
mode: item.mode || 'in',
|
||||
type: item.type || 'str',
|
||||
val: item.val || '',
|
||||
};
|
||||
return newObj;
|
||||
});
|
||||
// const newRes = res.map(item => {
|
||||
// const newObj = {
|
||||
// ...item,
|
||||
// rowStat: null,
|
||||
// id: item.id || '',
|
||||
// mode: item.mode || 'in',
|
||||
// type: item.type || 'str',
|
||||
// val: item.val || '',
|
||||
// };
|
||||
// return newObj;
|
||||
// });
|
||||
|
||||
const newRes = [
|
||||
{
|
||||
"id": "VAR001",
|
||||
"mode": "OUT",
|
||||
"type": "int",
|
||||
"val": "100",
|
||||
"rowStat": "C"
|
||||
},
|
||||
{
|
||||
"id": "VAR002",
|
||||
"mode": "IN",
|
||||
"type": "str",
|
||||
"val": "Hello World",
|
||||
"rowStat": "U"
|
||||
},
|
||||
{
|
||||
"id": "FUNC001",
|
||||
"mode": "out",
|
||||
"type": "function",
|
||||
"val": "calculateSum()",
|
||||
"rowStat": "C"
|
||||
},
|
||||
{
|
||||
"id": "VAR003",
|
||||
"mode": "IN",
|
||||
"type": "int",
|
||||
"val": "42",
|
||||
"rowStat": "D"
|
||||
},
|
||||
{
|
||||
"id": "VAR004",
|
||||
"mode": "OUT",
|
||||
"type": "str",
|
||||
"val": "Sample Text",
|
||||
"rowStat": "C"
|
||||
}
|
||||
];
|
||||
|
||||
this.setGridData({
|
||||
gridKey: this.gridNameParam,
|
||||
value: newRes,
|
||||
});
|
||||
this.$nextTick(() => {
|
||||
if (newRes.length > 0) {
|
||||
try {
|
||||
this.$refs[this.gridNameParam].focus({
|
||||
//rowKey: 0,
|
||||
rowKey: 0,
|
||||
setScroll: true,
|
||||
});
|
||||
} catch (error) {
|
||||
console.log('error[nextTick grid] : ', error);
|
||||
}
|
||||
}
|
||||
});
|
||||
// this.$nextTick(() => {
|
||||
// if (newRes.length > 0) {
|
||||
// try {
|
||||
// this.$refs[this.gridNameParam].focus({
|
||||
// //rowKey: 0,
|
||||
// rowKey: 0,
|
||||
// setScroll: true,
|
||||
// });
|
||||
// } catch (error) {
|
||||
// console.log('error[nextTick grid] : ', error);
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
this.paramLoadGrid = true;
|
||||
},
|
||||
xlsDataBind(res) {
|
||||
@ -754,21 +811,22 @@ export default {
|
||||
},
|
||||
inputClick(event, item, valueNm) {
|
||||
if (valueNm == 'refVal1') {
|
||||
const rowIdxKey = this.$refs[this.gridName].gridInstance.invoke(
|
||||
'getFocusedCell',
|
||||
).rowKey;
|
||||
const selectRowData = this.$refs[this.gridName].gridInstance.invoke(
|
||||
'getRow',
|
||||
rowIdxKey,
|
||||
);
|
||||
this.dialog = true;
|
||||
// const rowIdxKey = this.$refs[this.gridName].gridInstance.invoke(
|
||||
// 'getFocusedCell',
|
||||
// ).rowKey;
|
||||
// const selectRowData = this.$refs[this.gridName].gridInstance.invoke(
|
||||
// 'getRow',
|
||||
// rowIdxKey,
|
||||
// );
|
||||
|
||||
if (selectRowData.batchExecTp == 'DP') {
|
||||
// 여기에 팝업 레이어 띠우기 기능 추가
|
||||
this.pageData.paramStrData = event.target.value;
|
||||
this.pageData.paramChangeDataTarget = event.target;
|
||||
this.getRowParamData();
|
||||
this.dialog = true;
|
||||
}
|
||||
// if (selectRowData.batchExecTp == 'DP') {
|
||||
// // 여기에 팝업 레이어 띠우기 기능 추가
|
||||
// this.pageData.paramStrData = event.target.value;
|
||||
// this.pageData.paramChangeDataTarget = event.target;
|
||||
// this.getRowParamData();
|
||||
// this.dialog = true;
|
||||
// }
|
||||
}
|
||||
},
|
||||
setParamChangeData() {
|
||||
@ -835,10 +893,10 @@ const defaultData = {
|
||||
|
||||
/* 파라메터 설정요 변수 */
|
||||
/* { "1": {"id": "comId", "type": "str", "val": "COM01"},
|
||||
"2": {"id": "toStrDt", "type": "function", "val": "DATE_FORMAT(NOW(), '%Y%h%d')"},
|
||||
"3": {"id": "userId", "type": "str", "val": "3"},
|
||||
"4": {"id": "retCd", "mode":"OUT","type": "int", "val": "-1"},
|
||||
"5": {"id": "retMsg", "mode":"OUT","type": "str", "val": "전달"}} */
|
||||
"2": {"id": "toStrDt", "type": "function", "val": "DATE_FORMAT(NOW(), '%Y%h%d')"},
|
||||
"3": {"id": "userId", "type": "str", "val": "3"},
|
||||
"4": {"id": "retCd", "mode":"OUT","type": "int", "val": "-1"},
|
||||
"5": {"id": "retMsg", "mode":"OUT","type": "str", "val": "전달"}} */
|
||||
paramStrData: '',
|
||||
paramChangeDataStr: '',
|
||||
paramChangeDataTarget: null,
|
||||
@ -920,7 +978,10 @@ const myDetail = [
|
||||
valueNm: 'batchId',
|
||||
readonly: true,
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: false,
|
||||
placeholder: '시스템 자동입력',
|
||||
},
|
||||
@ -929,7 +990,10 @@ const myDetail = [
|
||||
label: '배치명',
|
||||
valueNm: 'batchNm',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -937,7 +1001,10 @@ const myDetail = [
|
||||
label: '배치 실행 구분',
|
||||
valueNm: 'batchExecTp',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
list: 'batchExecTpList',
|
||||
itemText: 'commCdNm',
|
||||
itemValue: 'commCd',
|
||||
@ -948,7 +1015,10 @@ const myDetail = [
|
||||
label: '배치 중복 여부',
|
||||
valueNm: 'batchDupExecFg',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
list: 'batchDupExecFgList',
|
||||
itemText: 'commCdNm',
|
||||
itemValue: 'commCd',
|
||||
@ -959,7 +1029,10 @@ const myDetail = [
|
||||
label: '실행주기(초)',
|
||||
valueNm: 'execCyclSecVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -967,7 +1040,10 @@ const myDetail = [
|
||||
label: '실행주기(분)',
|
||||
valueNm: 'execCyclMinVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -975,7 +1051,10 @@ const myDetail = [
|
||||
label: '실행주기(시)',
|
||||
valueNm: 'execCyclHhVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -983,7 +1062,10 @@ const myDetail = [
|
||||
label: '실행주기(일)',
|
||||
valueNm: 'execCyclDdVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -991,7 +1073,10 @@ const myDetail = [
|
||||
label: '실행주기(월)',
|
||||
valueNm: 'execCyclMmVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -999,7 +1084,10 @@ const myDetail = [
|
||||
label: '실행주기(요일)',
|
||||
valueNm: 'execCyclWdayVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -1007,7 +1095,10 @@ const myDetail = [
|
||||
label: '실행주기(년)',
|
||||
valueNm: 'execCyclYyyyVal',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -1015,7 +1106,10 @@ const myDetail = [
|
||||
label: '후속배치',
|
||||
valueNm: 'fllwBatchId',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
list: 'fllwBatchIdList',
|
||||
itemText: 'batchIdNm',
|
||||
itemValue: 'batchId',
|
||||
@ -1026,7 +1120,10 @@ const myDetail = [
|
||||
label: '실행명령',
|
||||
valueNm: 'execCmnd',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -1034,7 +1131,10 @@ const myDetail = [
|
||||
label: '실행 명령 경로',
|
||||
valueNm: 'execCmndPath',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -1042,7 +1142,10 @@ const myDetail = [
|
||||
label: '참조값1',
|
||||
valueNm: 'refVal1',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
@ -1050,21 +1153,30 @@ const myDetail = [
|
||||
label: '참조값2',
|
||||
valueNm: 'refVal2',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
label: '참조값3',
|
||||
valueNm: 'refVal3',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
},
|
||||
{
|
||||
type: 'CheckBox',
|
||||
label: '사용여부',
|
||||
valueNm: 'useFg',
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
value: { '1': true, '0': false },
|
||||
required: true,
|
||||
},
|
||||
@ -1074,7 +1186,10 @@ const myDetail = [
|
||||
valueNm: 'regUserNo',
|
||||
disabled: true,
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
placeholder: '시스템 자동입력',
|
||||
},
|
||||
{
|
||||
@ -1083,7 +1198,10 @@ const myDetail = [
|
||||
valueNm: 'regDttm',
|
||||
disabled: true,
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
placeholder: '시스템 자동입력',
|
||||
},
|
||||
{
|
||||
@ -1092,7 +1210,10 @@ const myDetail = [
|
||||
valueNm: 'procUserNo',
|
||||
disabled: true,
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pr-4',
|
||||
iconShow: true,
|
||||
placeholder: '시스템 자동입력',
|
||||
},
|
||||
{
|
||||
@ -1101,11 +1222,11 @@ const myDetail = [
|
||||
valueNm: 'procDttm',
|
||||
disabled: true,
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
labelCols: 12,
|
||||
textCols: 12,
|
||||
class: 'py-3 pl-4',
|
||||
iconShow: true,
|
||||
placeholder: '시스템 자동입력',
|
||||
},
|
||||
];
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -484,8 +484,7 @@ const defaultData = {
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
<style lang="scss" scoped>
|
||||
.selectbox:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
@ -598,6 +598,3 @@ const myDetail = [
|
||||
},
|
||||
];
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -12,7 +12,7 @@
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="4">
|
||||
<component :is="'SelectUseFg'" :parentPrgmId="myPrgmId" />
|
||||
<component :is="'SelectUseFg'" :parentPrgmId="myPrgmId" :labelCols="12" :textCols="12" />
|
||||
</v-col>
|
||||
<v-col :cols="4" class="text-right">
|
||||
<BtnSearch @click="search" />
|
||||
@ -158,6 +158,23 @@ export default {
|
||||
myPrgmId: myPrgmId,
|
||||
gridName: 'rowGrid',
|
||||
loadGrid: false,
|
||||
dataPathMock: {
|
||||
'rowGrid': {
|
||||
column: [
|
||||
{ header: '회사 ID', name: 'comId', hidden: true },
|
||||
{ header: '설비 그룹 ID', name: 'eqpmGrpId'},
|
||||
{ header: '설비 그룹 명', name: 'eqpmGrpNm'},
|
||||
{ header: '설비종류', name: 'eqpmKindId'},
|
||||
{ header: '사용여부', name: 'useFg'},
|
||||
{ header: '등록자NO', name: 'regUserNo', hidden: true},
|
||||
{ header: '등록일시', name: 'regDttm', hidden: true },
|
||||
{ header: '수정자NO', name: 'procUserNo', hidden: true },
|
||||
{ header: '수정일시', name: 'procDttm', hidden: true}
|
||||
],
|
||||
data: dataPathDataExample,
|
||||
defaultRow: dataPathDataExample,
|
||||
}
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -437,7 +454,18 @@ const defaultData = {
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
import { getPathDataExample } from '@/const/const'
|
||||
const dataPathDataExample = getPathDataExample({
|
||||
comId: 'EKIND0005',
|
||||
eqpmGrpId: 'EQG000010',
|
||||
eqpmGrpNm:'냉수파이프고온',
|
||||
eqpmKindId:'냉동파이프',
|
||||
useFg:'1',
|
||||
regUserNo: '사용',
|
||||
regDttm: 'EQP_HVAC_LT_CH001',
|
||||
procUserNo: '사용',
|
||||
procDttm: 'EQP_HVAC_LT_CH001',
|
||||
});
|
||||
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -545,7 +545,7 @@ const myDetail = [
|
||||
];
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.swiper-wrapper{
|
||||
box-sizing: inherit !important;
|
||||
}
|
||||
|
@ -9,32 +9,23 @@
|
||||
<v-card-title class="pa-0">공지사항</v-card-title>
|
||||
<div class="d-flex align-center">
|
||||
<!-- <v-btn @click="listPageButtonGroupClickEvent('view')" :ripple="false" class="mr-1">상세보기</v-btn> -->
|
||||
<v-btn
|
||||
@click="listPageButtonGroupClickEvent('write')"
|
||||
:ripple="false"
|
||||
class="mr-1"
|
||||
>작성</v-btn
|
||||
>
|
||||
<a-button type="primary" size="large" @click="listPageButtonGroupClickEvent('write')" :ripple="false"
|
||||
icon="edit" class="mr-1">작성</a-button>
|
||||
<!-- <v-btn @click="listPageButtonGroupClickEvent('delete')" :ripple="false">삭제</v-btn> -->
|
||||
</div>
|
||||
</div>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row ref="contents" style="height:calc(100% - 76px)">
|
||||
<v-row ref="contents">
|
||||
<v-col :cols="12">
|
||||
<v-card class="pa-5">
|
||||
<div class="h100 px-5" style="height:calc(100% - 70px)">
|
||||
<div ref="gridParent" class="h100">
|
||||
<component
|
||||
:is="loadGrid ? 'Grid' : null"
|
||||
:gridName="gridName"
|
||||
:parentPrgmId="myPrgmId"
|
||||
ref="noticeMngGrid"
|
||||
@getRowsData="getRowData"
|
||||
/>
|
||||
</div>
|
||||
<div ref="gridParent" class="h100 px-50">
|
||||
<component :is="loadGrid ? 'Grid' : null" :gridName="gridName" :parentPrgmId="myPrgmId"
|
||||
ref="noticeMngGrid" @getRowsData="getRowData" :dataPath="dataPathMock" />
|
||||
</div>
|
||||
<!-- <div class="h100 W100 px-50" style="min-height:calc(100% - 70px)">
|
||||
</div> -->
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
@ -42,94 +33,62 @@
|
||||
<!-- 리스트 페이지 끝 -->
|
||||
<!-- 상세보기 페이지 시작 -->
|
||||
<div v-if="pageActionFlag == 'view'" class="h100">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col :cols="12">
|
||||
<v-card>
|
||||
<div class="d-flex align-center justify-space-between pa-5">
|
||||
<v-card-title class="pa-0">공지사항</v-card-title>
|
||||
<div class="d-flex align-center">
|
||||
<v-btn
|
||||
@click="viewPageButtonGroupClickEvent('list')"
|
||||
:ripple="false"
|
||||
class="mr-1"
|
||||
>목록</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="viewPageButtonGroupClickEvent('reply')"
|
||||
:ripple="false"
|
||||
class="mr-1"
|
||||
>답글</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="viewPageButtonGroupClickEvent('update')"
|
||||
:ripple="false"
|
||||
class="mr-1"
|
||||
>수정</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="viewPageButtonGroupClickEvent('delete')"
|
||||
:ripple="false"
|
||||
>삭제</v-btn
|
||||
>
|
||||
</div>
|
||||
<v-card>
|
||||
<v-row class="pa-5">
|
||||
<v-col :cols="12" class="d-flex align-center justify-space-between ">
|
||||
<v-card-title class="pa-0 custom-title-4">공지사항</v-card-title>
|
||||
<div class="d-flex align-center">
|
||||
<a-button @click="viewPageButtonGroupClickEvent('list')" type="primary" :ripple="false" class="mr-1" icon="unordered-list" >목록</a-button>
|
||||
<a-button @click="viewPageButtonGroupClickEvent('reply')" type="primary" :ripple="false" class="mr-1" icon="send-outlined" >
|
||||
<v-icon
|
||||
small
|
||||
:class="['mr-2']"
|
||||
>$icoSend</v-icon>
|
||||
답글
|
||||
</a-button>
|
||||
<a-button @click="viewPageButtonGroupClickEvent('update')" type="primary" :ripple="false" class="mr-1" icon="edit">수정</a-button>
|
||||
<a-button @click="viewPageButtonGroupClickEvent('delete')" type="danger" ghost icon="delete" >삭제</a-button>
|
||||
</div>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card min-height="60" class="pa-5">
|
||||
<v-text-field
|
||||
v-model="viewActionData.title"
|
||||
class="v-input__custom"
|
||||
placeholder="제목"
|
||||
hide-details
|
||||
:readonly="true"
|
||||
>
|
||||
</v-col>
|
||||
<v-col :cols="12" class="custom-title-4-new">
|
||||
제목
|
||||
</v-col>
|
||||
<v-col :cols="12">
|
||||
<v-text-field v-model="viewActionData.title" class="v-input__custom" hide-details
|
||||
:readonly="true">
|
||||
</v-text-field>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row style="height:calc(100% - 218px);">
|
||||
<v-col :cols="12" style="height: 100%;">
|
||||
<v-card class="pa-5" style="overflow-y:auto;">
|
||||
<viewer
|
||||
v-if="viewActionData.viewerFlag"
|
||||
ref="tuiViewer"
|
||||
height="inherit"
|
||||
:initialValue="viewActionData.content"
|
||||
theme="white"
|
||||
:class="isDarkMode ? 'theme--white' : 'theme--black'"
|
||||
/>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<!-- <v-row style="height: 1vh;">
|
||||
|
||||
</v-row> -->
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card class="pa-5">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col cols="1">
|
||||
<v-card-subtitle class="pa-0">파일목록</v-card-subtitle>
|
||||
</v-col>
|
||||
<v-col :cols="11">
|
||||
<v-row
|
||||
v-for="fileData in viewActionData.fileData"
|
||||
:key="fileData.apndFileId"
|
||||
>
|
||||
<a @click.prevent="downloadFile(fileData)">
|
||||
<div class="search-box-label">
|
||||
{{ fileData.apndFileNm + '.' + fileData.apndFileExt }}
|
||||
</div>
|
||||
</a>
|
||||
</v-row>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row style="height:calc(100% - 218px);">
|
||||
<v-col :cols="12" style="height: 100%;">
|
||||
<v-card class="pa-5" style="overflow-y:auto;">
|
||||
<viewer v-if="viewActionData.viewerFlag" ref="tuiViewer" height="inherit"
|
||||
:initialValue="viewActionData.content" theme="white"
|
||||
:class="isDarkMode ? 'theme--white' : 'theme--black'" />
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card class="pa-5">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col cols="1">
|
||||
<v-card-subtitle class="pa-0">파일목록</v-card-subtitle>
|
||||
</v-col>
|
||||
<v-col :cols="11">
|
||||
<v-row v-for="fileData in viewActionData.fileData" :key="fileData.apndFileId">
|
||||
<a @click.prevent="downloadFile(fileData)">
|
||||
<div class="search-box-label">
|
||||
{{ fileData.apndFileNm + '.' + fileData.apndFileExt }}
|
||||
</div>
|
||||
</a>
|
||||
</v-row>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
</div>
|
||||
<!-- 상세보기 페이지 끝 -->
|
||||
<!-- 작성 페이지 시작 -->
|
||||
@ -138,130 +97,74 @@
|
||||
<v-col :cols="12">
|
||||
<v-card>
|
||||
<v-card-title>공지사항</v-card-title>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card min-height="60" class="pa-5">
|
||||
<v-text-field
|
||||
v-model="writeActionData.title"
|
||||
class="v-input__custom"
|
||||
placeholder="제목"
|
||||
hide-details
|
||||
>
|
||||
</v-text-field>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row style="height:calc(100% - 270px)">
|
||||
<v-col :cols="12">
|
||||
<editor ref="tuiEditor" height="100%" initialEditType="wysiwyg" />
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card class="pa-5">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col cols="1">
|
||||
<v-card-subtitle class="pa-0">파일첨부</v-card-subtitle>
|
||||
<v-row class="pa-5">
|
||||
<v-col :cols="12" class="custom-title-4-new">
|
||||
제목
|
||||
</v-col>
|
||||
<v-col :cols="4">
|
||||
<v-file-input
|
||||
multiple
|
||||
background-color="#47535c"
|
||||
show-size
|
||||
v-model="writeActionData.fileData"
|
||||
hide-details="true"
|
||||
>
|
||||
<v-col :cols="12">
|
||||
<v-text-field v-model="writeActionData.title" class="v-input__custom" hide-details outlined>
|
||||
</v-text-field>
|
||||
</v-col>
|
||||
<v-col :cols="12" style="min-height: calc(90vh - 270px);">
|
||||
<editor ref="tuiEditor" height="100%" initialEditType="wysiwyg" />
|
||||
</v-col>
|
||||
|
||||
<v-col :cols="12" class="custom-title-4-new mt-2">
|
||||
파일첨부
|
||||
</v-col>
|
||||
<v-col :cols="6">
|
||||
<!-- background-color="#47535c" -->
|
||||
<v-file-input multiple show-size v-model="writeActionData.fileData" hide-details="true"
|
||||
clear-icon="delete" chips label="업로드" flat hide-input outlined>
|
||||
<!-- append-icon="cancel" -->
|
||||
</v-file-input>
|
||||
</v-col>
|
||||
<v-col :cols="12" class="text-right">
|
||||
<a-button @click="writePageButtonGroupClickEvent('cancel')" :ripple="false" class="mr-2">취소</a-button>
|
||||
<a-button @click="writePageButtonGroupClickEvent('write')" :ripple="false" type="primary">등록</a-button>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12" class="text-right">
|
||||
<v-btn
|
||||
@click="writePageButtonGroupClickEvent('write')"
|
||||
:ripple="false"
|
||||
>등록</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="writePageButtonGroupClickEvent('cancel')"
|
||||
:ripple="false"
|
||||
>취소</v-btn
|
||||
>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
</div>
|
||||
<!-- 작성 페이지 끝 -->
|
||||
<!-- 답글 작성 페이지 시작 -->
|
||||
<div v-if="pageActionFlag == 'reply'" class="h100">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col :cols="12">
|
||||
<v-card>
|
||||
<v-card-title>공지사항</v-card-title>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card min-height="60" class="pa-5">
|
||||
<v-text-field
|
||||
v-model="replyActionData.title"
|
||||
class="v-input__custom"
|
||||
placeholder="제목"
|
||||
hide-details
|
||||
>
|
||||
<div v-if="pageActionFlag == 'reply'" class="h1001">
|
||||
<v-card class="pa-5">
|
||||
<v-row>
|
||||
<v-col :cols="12" class="card-title-color">
|
||||
<v-card-title class="pa-0 custom-title-4">공지사항</v-card-title>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row align="center" class="mt-5" >
|
||||
<v-col :cols="12">
|
||||
<p class="custom-title-4-new">제목</p>
|
||||
<v-text-field v-model="replyActionData.title" class="v-input__custom" placeholder="제목" outlined hide-details>
|
||||
</v-text-field>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row style="height:calc(100% - 270px)">
|
||||
<v-col :cols="12">
|
||||
<editor
|
||||
ref="tuiReplyEditor"
|
||||
height="100%"
|
||||
initialEditType="wysiwyg"
|
||||
/>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card class="pa-5">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-col cols="1">
|
||||
<v-card-subtitle class="pa-0">파일첨부</v-card-subtitle>
|
||||
</v-col>
|
||||
<v-col :cols="4">
|
||||
<v-file-input
|
||||
multiple
|
||||
background-color="#47535c"
|
||||
show-size
|
||||
v-model="replyActionData.fileData"
|
||||
hide-details="true"
|
||||
>
|
||||
</v-file-input>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12" class="text-right">
|
||||
<v-btn
|
||||
@click="replyPageButtonGroupClickEvent('reply')"
|
||||
:ripple="false"
|
||||
>등록</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="replyPageButtonGroupClickEvent('cancel')"
|
||||
:ripple="false"
|
||||
>취소</v-btn
|
||||
>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-col>
|
||||
<v-col :cols="12" style="height: calc(100vh - 270px);" class="mt-4" >
|
||||
<editor ref="tuiReplyEditor" height="100%" initialEditType="wysiwyg" />
|
||||
</v-col>
|
||||
<v-col :cols="12" class="custom-title-4-new mt-4" >
|
||||
파일첨부
|
||||
</v-col>
|
||||
<v-col :cols="12" >
|
||||
<v-file-input
|
||||
multiple
|
||||
show-size
|
||||
v-model="replyActionData.fileData"
|
||||
hide-details="true">
|
||||
</v-file-input>
|
||||
</v-col>
|
||||
<v-col :cols="12" class="text-right">
|
||||
<a-button @click="replyPageButtonGroupClickEvent('cancel')" :ripple="false">취소</a-button>
|
||||
<a-button @click="replyPageButtonGroupClickEvent('reply')" :ripple="false" type="primary" >등록</a-button>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
|
||||
</div>
|
||||
<!-- 답글 작성 페이지 끝 -->
|
||||
<!-- 수정 페이지 시작 -->
|
||||
@ -276,24 +179,15 @@
|
||||
<v-row>
|
||||
<v-col :cols="12">
|
||||
<v-card min-height="60" class="pa-5">
|
||||
<v-text-field
|
||||
v-model="updateActionData.title"
|
||||
class="v-input__custom"
|
||||
placeholder="제목"
|
||||
hide-details
|
||||
>
|
||||
<v-text-field v-model="updateActionData.title" class="v-input__custom" placeholder="제목" hide-details>
|
||||
</v-text-field>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row style="height:calc(100% - 342px)">
|
||||
<v-col :cols="12">
|
||||
<editor
|
||||
ref="tuiUpdateEditor"
|
||||
height="100%"
|
||||
initialEditType="wysiwyg"
|
||||
:initialValue="updateActionData.content"
|
||||
/>
|
||||
<editor ref="tuiUpdateEditor" height="100%" initialEditType="wysiwyg"
|
||||
:initialValue="updateActionData.content" />
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
@ -304,13 +198,8 @@
|
||||
<v-card-subtitle class="pa-0">파일첨부</v-card-subtitle>
|
||||
</v-col>
|
||||
<v-col :cols="4">
|
||||
<v-file-input
|
||||
multiple
|
||||
background-color="#47535c"
|
||||
show-size
|
||||
v-model="updateActionData.fileData"
|
||||
hide-details="true"
|
||||
>
|
||||
<v-file-input multiple background-color="#47535c" show-size v-model="updateActionData.fileData"
|
||||
hide-details="true">
|
||||
</v-file-input>
|
||||
</v-col>
|
||||
</v-row>
|
||||
@ -325,10 +214,7 @@
|
||||
<v-card-subtitle class="pa-0">파일목록</v-card-subtitle>
|
||||
</v-col>
|
||||
<v-col :cols="11">
|
||||
<v-row
|
||||
v-for="fileData in updateActionData.currentFileList"
|
||||
:key="fileData.apndFileId"
|
||||
>
|
||||
<v-row v-for="fileData in updateActionData.currentFileList" :key="fileData.apndFileId">
|
||||
<a @click.prevent="downloadFile(fileData)">
|
||||
<v-col :cols="12">
|
||||
<div class="search-box-label">
|
||||
@ -336,10 +222,7 @@
|
||||
</div>
|
||||
</v-col>
|
||||
</a>
|
||||
<v-icon
|
||||
class="pl-5"
|
||||
@click="addFileToDeleteFileList(fileData)"
|
||||
>
|
||||
<v-icon class="pl-5" @click="addFileToDeleteFileList(fileData)">
|
||||
mdi-close
|
||||
</v-icon>
|
||||
</v-row>
|
||||
@ -350,16 +233,8 @@
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col :cols="12" class="text-right">
|
||||
<v-btn
|
||||
@click="updatePageButtonGroupClickEvent('update')"
|
||||
:ripple="false"
|
||||
>등록</v-btn
|
||||
>
|
||||
<v-btn
|
||||
@click="updatePageButtonGroupClickEvent('cancel')"
|
||||
:ripple="false"
|
||||
>취소</v-btn
|
||||
>
|
||||
<v-btn @click="updatePageButtonGroupClickEvent('update')" :ripple="false">등록</v-btn>
|
||||
<v-btn @click="updatePageButtonGroupClickEvent('cancel')" :ripple="false">취소</v-btn>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</div>
|
||||
@ -442,6 +317,8 @@ export default {
|
||||
postGrpOrd: null,
|
||||
postOrgNo: null,
|
||||
},
|
||||
dataPathMock: {},
|
||||
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -605,6 +482,12 @@ export default {
|
||||
value: columnList,
|
||||
});
|
||||
|
||||
// -----------------------TEST------------------
|
||||
this.dataPathMock[this.gridName] = {
|
||||
column: columnList,
|
||||
data: dataPathDataExample,
|
||||
}
|
||||
// -----------------------END TEST--------------
|
||||
this.getGridData();
|
||||
},
|
||||
async getGridData() {
|
||||
@ -613,19 +496,30 @@ export default {
|
||||
};
|
||||
|
||||
this.loadGrid = false;
|
||||
|
||||
var res = await this.postApiReturn({
|
||||
apiKey: 'selectPostList',
|
||||
resKey: 'postData',
|
||||
sendParam: params,
|
||||
});
|
||||
let res = null;
|
||||
try {
|
||||
res = await this.postApiReturn({
|
||||
apiKey: 'selectPostList',
|
||||
resKey: 'postData',
|
||||
sendParam: params,
|
||||
});
|
||||
}
|
||||
catch (err) { }
|
||||
finally {
|
||||
// -----Test mock data-------------
|
||||
if (null === res) {
|
||||
res = dataPathDataExample;
|
||||
}
|
||||
// -----End test
|
||||
}
|
||||
|
||||
this.setGridData({
|
||||
gridKey: this.gridName,
|
||||
value: res,
|
||||
});
|
||||
|
||||
this.loadGrid = true;
|
||||
this.$nextTick(() => {
|
||||
this.loadGrid = true;
|
||||
});
|
||||
this.setPageData({ isFind: false });
|
||||
},
|
||||
getRowData(data) {
|
||||
@ -1162,9 +1056,19 @@ const defaultData = {
|
||||
column: [],
|
||||
},
|
||||
};
|
||||
|
||||
import { getPathDataExample } from '@/const/const'
|
||||
const dataPathDataExample = getPathDataExample({
|
||||
postNo: '18',
|
||||
title: '오픈공지',
|
||||
regUserNo: '1',
|
||||
regDttm: '2023-01-09 09:39:41',
|
||||
viewCnt: '1'
|
||||
}, 10);
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.tui-grid-table tr {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
<v-row ref="searchFilter">
|
||||
<v-col :cols="12">
|
||||
<v-card class="searchFilter">
|
||||
<v-row align="center" no-gutters>
|
||||
<v-row align="end" no-gutters>
|
||||
<v-col :cols="3">
|
||||
<component
|
||||
:is="'selectCodeList'"
|
||||
@ -13,6 +13,7 @@
|
||||
:dataKey="'selectUseFg'"
|
||||
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }"
|
||||
:addAll="true"
|
||||
customClass="select-large"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="4">
|
||||
@ -21,12 +22,13 @@
|
||||
label="프로그램명"
|
||||
valueNm="prgmNm"
|
||||
:searchOption="true"
|
||||
:labelCols="3"
|
||||
:textCols="9"
|
||||
:labelCols="12"
|
||||
:textCols="12"
|
||||
customClass="input-large"
|
||||
/>
|
||||
</v-col>
|
||||
<v-col :cols="5" class="text-right">
|
||||
<BtnSearch />
|
||||
<BtnSearch size="large" />
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-card>
|
||||
@ -48,7 +50,7 @@
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height:calc(100% - 70px)">
|
||||
<div style="min-height:calc(100% - 70px)">
|
||||
<div ref="gridParent" class="px-5 h100">
|
||||
<component
|
||||
:ref="gridName"
|
||||
@ -56,6 +58,7 @@
|
||||
:parentPrgmId="myPrgmId"
|
||||
:gridName="gridName"
|
||||
@getRowsData="getRowData"
|
||||
:dataPath="dataPathMock"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@ -67,16 +70,16 @@
|
||||
<div class="d-flex align-center justify-space-between pa-5">
|
||||
<v-card-title class="pa-0">프로그램 상세</v-card-title>
|
||||
</div>
|
||||
<div class="px-5 h100" style="height:calc(100% - 76px)">
|
||||
<div class="w100">
|
||||
<component
|
||||
:is="'Form'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:bindingData="gridName"
|
||||
:detailList="detailList"
|
||||
@gridEditingFinish="gridEditingFinish"
|
||||
/>
|
||||
</div>
|
||||
<div class="px-5" style="min-height:calc(100% - 76px)">
|
||||
<component
|
||||
:is="'Form'"
|
||||
:parentPrgmId="myPrgmId"
|
||||
:bindingData="gridName"
|
||||
:detailList="detailList"
|
||||
@gridEditingFinish="gridEditingFinish"
|
||||
/>
|
||||
<!-- <div class="w100">
|
||||
</div> -->
|
||||
</div>
|
||||
</v-card>
|
||||
</v-col>
|
||||
@ -127,6 +130,23 @@ export default {
|
||||
gridName: 'rowGrid',
|
||||
// rowGridOrigin: [],
|
||||
detailList: myDetail,
|
||||
|
||||
dataPathMock: {
|
||||
'rowGrid': {
|
||||
column: [
|
||||
{ header: '프로그램ID', name: 'field1', align: 'left' },
|
||||
{ header: '프로그램덤', name: 'field2', align: 'left' },
|
||||
{ header: '타임', name: 'field3', align: 'left' },
|
||||
{ header: '사용여부', name: 'field4', align: 'left' }
|
||||
],
|
||||
data: dataPathDataExample,
|
||||
defaultRow: dataPathDataExample,
|
||||
option: {
|
||||
scrollY: false,
|
||||
scrollX: false,
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -443,6 +463,8 @@ const myDetail = [
|
||||
class: 'py-2',
|
||||
required: false,
|
||||
placeholder: '시스템 자동입력',
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -451,6 +473,8 @@ const myDetail = [
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
required: true,
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'SelectBox',
|
||||
@ -463,6 +487,8 @@ const myDetail = [
|
||||
{ text: '프로그램', value: '1' },
|
||||
{ text: '팝업', value: '2' },
|
||||
],
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'CheckBox',
|
||||
@ -474,6 +500,8 @@ const myDetail = [
|
||||
class: 'py-2',
|
||||
value: { '1': true, '0': false },
|
||||
required: true,
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -483,6 +511,8 @@ const myDetail = [
|
||||
cols: 12,
|
||||
class: 'py-2',
|
||||
required: true,
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -492,6 +522,8 @@ const myDetail = [
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
placeholder: '시스템 자동입력',
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -501,6 +533,8 @@ const myDetail = [
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
placeholder: '시스템 자동입력',
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -510,6 +544,8 @@ const myDetail = [
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
placeholder: '시스템 자동입력',
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
{
|
||||
type: 'InputText',
|
||||
@ -519,9 +555,17 @@ const myDetail = [
|
||||
cols: 6,
|
||||
class: 'py-2',
|
||||
placeholder: '시스템 자동입력',
|
||||
textCols: 12,
|
||||
iconShow: true
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
import { getPathDataExample } from '@/const/const'
|
||||
const dataPathDataExample = getPathDataExample({
|
||||
field1: 'PRG0001',
|
||||
field2: '대시보드',
|
||||
field3: '프로그램',
|
||||
field4: '사용'
|
||||
});
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -542,6 +542,3 @@ const myDetail = [
|
||||
},
|
||||
];
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -447,6 +447,3 @@ const defaultData = {
|
||||
selectedRowKey: null,
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -296,6 +296,3 @@ const menuCnctLogColumns = [
|
||||
{ header: '메뉴 접근 일시', name: 'menuCnctDttm', align: 'center' },
|
||||
];
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/common.scss';
|
||||
</style>
|
||||
|
@ -553,7 +553,7 @@ const myDetail = [
|
||||
];
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.v-text-field__details {
|
||||
display: none;
|
||||
}
|
||||
|
@ -56,4 +56,3 @@ export default {
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">@import "@/assets/scss/common.scss" </style>
|
Reference in New Issue
Block a user