김성원 김성원 2023-07-27
Merge branch 'front_end' of http://210.180.118.83/ysseo/crosswalk into front_end
@d27baee0f99633b6149f0b33ee5c6f9a884a0436
client/views/pages/RealtimeStatus/ErrorSearch.vue
--- client/views/pages/RealtimeStatus/ErrorSearch.vue
+++ client/views/pages/RealtimeStatus/ErrorSearch.vue
@@ -268,15 +268,10 @@
         </div>
       </div>
       <div class="bottom-wrap">
-        <div class="pg-wrap">
-          <a href="#" class="pg-item prev">◀</a>
-          <a href="#" class="pg-item active">1</a>
-          <a href="#" class="pg-item">2</a>
-          <a href="#" class="pg-item">3</a>
-          <a href="#" class="pg-item">4</a>
-          <a href="#" class="pg-item">5</a>
-          <a href="#" class="pg-item next">▶</a>
-        </div>
+        <PaginationButton
+            v-model:currentPage="errorListSearch.currentPage"
+            :per-page="errorListSearch.perPage" :total-count="errorListCount" :max-range="5"
+            :click="errorSelectList" />
         <div class="btn-wrap">
           <router-link to="/UserManagement.page">
             <span class="btn-2 green-btn">Excel로 저장</span>
client/views/pages/RealtimeStatus/SituationSearch.vue
--- client/views/pages/RealtimeStatus/SituationSearch.vue
+++ client/views/pages/RealtimeStatus/SituationSearch.vue
@@ -70,13 +70,15 @@
             </tr>
           </thead>
           <tbody>
-            <tr @click="modal_1 = true">
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
+            <tr v-for="(item, idx) in eventList"
+              :key="idx"
+            >
+              <td data-title="NO">{{ eventIdx - idx }}</td>
+              <td data-title="발생일시"> {{ item.ocrn_dt }}</td>
+              <td data-title="시/도">{{ item.sido_nm }}</td>
+              <td data-title="시/군/구">{{ item.sigungu_nm }}</td>
+              <td data-title="행정동">{{ item.dong_nm }}</td>
+              <td data-title="상황명">{{ item.type }}</td>
             </tr>
           </tbody>
         </table>
@@ -149,15 +151,10 @@
         </div>
       </div>
       <div class="bottom-wrap">
-        <div class="pg-wrap">
-          <a href="#" class="pg-item prev">◀</a>
-          <a href="#" class="pg-item active">1</a>
-          <a href="#" class="pg-item">2</a>
-          <a href="#" class="pg-item">3</a>
-          <a href="#" class="pg-item">4</a>
-          <a href="#" class="pg-item">5</a>
-          <a href="#" class="pg-item next">▶</a>
-        </div>
+        <PaginationButton
+            v-model:currentPage="eventListSearch.currentPage"
+            :per-page="eventListSearch.perPage" :total-count="eventListCount" :max-range="5"
+            :click="eventSelectList" />
         <div class="btn-wrap">
           <router-link to="/UserManagement.page">
             <span class="btn-2 green-btn">Excel로 저장</span>
@@ -169,21 +166,63 @@
 </template>
 
 <script>
-import Modal from "../../component/Modal.vue";
+import axios from "axios";
+import PaginationButton from "../../component/pagination/PaginationButton.vue";
+import dongSelectList from '../../component/dongSelectList.vue';
+import COMMON_UTIL from "../../../resources/js/commonUtil.ts";
 
 export default {
   data() {
     return {
-      modal_1: false,
+      eventListSearch: {
+        currentPage: 1,
+        perPage: 10,
+        // startDate: null,
+        // endDate: null,
+        // searchDongCode: null,
+      },
+
+      eventListCount: 0,
+      eventList: [],
+      eventIdx: 0,
+
+      address: {},
+      modal_eventOne: false,
     };
   },
-  methods: {},
+  methods: {
+    eventSelectList: function() {
+      const vm = this;
+
+        axios({
+        url: "/statusControl/eventSelectList.json",
+        method: "post",
+        headers: {
+          "Content-Type": "application/json; charset=UTF-8",
+        },
+        data: vm.eventListSearch,
+      })
+        .then(function(response) {
+          console.log("errorSelectList - response : ", response.data);
+          vm.eventListCount = response.data.eventListCount;
+          vm.eventList = response.data.eventList;
+          vm.eventIdx = response.data.eventListCount - (vm.eventListSearch.currentPage - 1) * response.data.eventList.length;
+        })
+        .catch(function(error) {
+          console.log("errorSelectList - error : ", error);
+          alert("상황발생 목록 조회 오류, 관리자에게 문의해주세요.");
+        });
+    },
+  },
   watch: {},
-  computed: {
-    Modal: Modal,
+  computed: {},
+  components: {
+    PaginationButton: PaginationButton,
+    dongSelectList: dongSelectList
   },
   mounted() {
     console.log("Main4 mounted");
+    this.eventSelectList();
   },
 };
 </script>
client/views/pages/SystemManagement/AccessRecord.vue
--- client/views/pages/SystemManagement/AccessRecord.vue
+++ client/views/pages/SystemManagement/AccessRecord.vue
@@ -102,10 +102,10 @@
           </thead>
           <tbody>
             <tr v-for="(item, idx) in userAccessList" :key="idx">
-              <td data-title="NO">{{ idx + 1 }}</td>
+              <td data-title="NO">{{ userAccessIdx - idx }}</td>
               <td data-title="접속ID">{{ item.user_id }}</td>
               <td data-title="접속자이름">{{ item.user_nm }}</td>
-              <td data-title="접속일시">{{ yyyymmdd(item.cntn_dt) }}</td>
+              <td data-title="접속일시">{{ item.cntn_dt }}</td>
               <td data-title="접속IP">{{ item.cntn_ip }}</td>
               <td data-title="접속타입">{{ item.cntn_ty }}</td>
             </tr>
@@ -178,6 +178,7 @@
       },
       userAccessCount: 0,
       userAccessList: [],
+      userAccessIdx: 0,
     };
   },
   methods: {
@@ -196,16 +197,12 @@
           console.log("userAccessList - response : ", response.data);
           vm.userAccessCount = response.data.userAccessCount;
           vm.userAccessList = response.data.userAccessList;
+          vm.userAccessIdx = vm.userAccessCount-(vm.userAccessListSearch.currentPage-1)*vm.userAccessList.length;
         })
         .catch(function (error) {
           console.log("userAccessList - error : ", error);
           alert("접속기록 목록 조회 오류, 관리자에게 문의해주세요.");
         });
-    },
-    
-    //날짜 시,분,초 자르기
-    yyyymmdd: function (date) {
-      return COMMON_UTIL.yyyymmdd(date);
     },
 
     //사용자 목록 페이지 이동
client/views/pages/SystemManagement/DataRecord.vue
--- client/views/pages/SystemManagement/DataRecord.vue
+++ client/views/pages/SystemManagement/DataRecord.vue
@@ -50,15 +50,19 @@
             </tr>
           </thead>
           <tbody>
-            <tr>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
-              <td></td>
+            <tr
+              v-for="(item, idx) in dataLogList"
+              :key="idx"
+            >
+              <td data-title="NO">{{ dataLogIdx - idx }}</td>
+              <td data-title="발생일시"> {{ item.clct_dt }}</td>
+              <td data-title="시/도">{{ item.sido_nm }}</td>
+              <td data-title="시/군/구">{{ item.sigungu_nm }}</td>
+              <td data-title="행정동">{{ item.dong_nm }}</td>
+              <td data-title="노드명">{{ item.node_name }}</td>
+              <td data-title="횡단보도명">{{ item.crslk_nm }}</td>
+              <td v-if="item.eqpmn_trobl_yn == 'y'" data-title="장애발생여부">발생</td>
+              <td v-else data-title="장애발생여부">미발생</td>
             </tr>
           </tbody>
         </table>
@@ -104,15 +108,10 @@
         </table>
       </div>
       <div class="bottom-wrap">
-        <div class="pg-wrap">
-          <a href="#" class="pg-item prev">◀</a>
-          <a href="#" class="pg-item active">1</a>
-          <a href="#" class="pg-item">2</a>
-          <a href="#" class="pg-item">3</a>
-          <a href="#" class="pg-item">4</a>
-          <a href="#" class="pg-item">5</a>
-          <a href="#" class="pg-item next">▶</a>
-        </div>
+        <PaginationButton
+          v-model:currentPage="dataLogListSearch.currentPage"
+          :per-page="dataLogListSearch.perPage" :total-count="dataLogListCount" :max-range="5"
+          :click="dataLogSelectList" />
         <div class="btn-wrap">
           <router-link to="/UserManagement.page">
             <span class="btn-2 green-btn">Excel로 저장</span>
@@ -124,22 +123,67 @@
 </template>
 
 <script>
-import Modal from "../../component/Modal.vue";
+import axios from "axios";
+import PaginationButton from "../../component/pagination/PaginationButton.vue";
+import dongSelectList from '../../component/dongSelectList.vue';
+import COMMON_UTIL from "../../../resources/js/commonUtil.ts";
 
 export default {
   data() {
     return {
+      dataLogListSearch: {
+        currentPage: 1,
+        perPage: 10,
+        // startDate: null,
+        // endDate: null,
+        // searchDongCode: null,
+      },
+
+      dataLogListCount: 0,
+      dataLogList: [],
+      dataLogIdx: 0,
+
+      address: {},
     };
   },
   methods: {
-    
+    dataLogSelectList: function() {
+      const vm = this;
+
+        axios({
+        url: "/dataLog/dataLogSelectList.json",
+        method: "post",
+        headers: {
+          "Content-Type": "application/json; charset=UTF-8",
+        },
+        data: vm.dataLogListSearch,
+      })
+        .then(function(response) {
+          console.log("dataLogSelectList - response : ", response.data);
+          vm.dataLogListCount = response.data.dataLogListCount;
+          vm.dataLogList = response.data.dataLogList;
+          vm.dataLogIdx = response.data.dataLogListCount - (vm.dataLogListSearch.currentPage - 1) * response.data.dataLogList.length;
+        })
+        .catch(function(error) {
+          console.log("errorSelectList - error : ", error);
+          alert("장애발생 목록 조회 오류, 관리자에게 문의해주세요.");
+        });
+    },
+
+    //날짜에 '-' 넣기
+    yyyymmdd(date) {
+      return COMMON_UTIL.yyyymmdd(date);
+    },
   },
   watch: {},
-  computed: {
-    Modal: Modal,
+  computed: {},
+  components: {
+    PaginationButton: PaginationButton,
+    dongSelectList: dongSelectList
   },
   mounted() {
     console.log("Main4 mounted");
+    this.dataLogSelectList();
   },
 };
 </script>
client/views/pages/SystemManagement/NodeManagement.vue
--- client/views/pages/SystemManagement/NodeManagement.vue
+++ client/views/pages/SystemManagement/NodeManagement.vue
@@ -226,7 +226,7 @@
     </div>
   </div>
   -->
-   <div class="modal-wrap" v-if="map_open">
+  <div class="modal-wrap" v-if="map_open">
     <div class="modal-bg">
     </div>
     <div class="modalMap">
@@ -236,11 +236,11 @@
              <!-- @siDoGunGuSelectF="siDoGunGuSelectF" @dongSelectF="dongSelectF" @nodeSelectF="nodeSelectF"></dongSelectList> -->
       </div>
       <button type="button" class="green-btn" @click="searchDong">검색</button>
-      <OpenLayers  ref="open_layers"/>
-          <label>위도 : </label>
-          <input style="width: 20rem" type="text" v-model="map_lat" disabled/>
-          <label>경도 : </label>
-          <input style="width: 20rem" type="text" v-model="map_lon" disabled/>
+      <OpenLayers ref="open_layers"/>
+      <label>위도 : </label>
+      <input style="width: 20rem" type="text" v-model="map_lat" disabled/>
+      <label>경도 : </label>
+      <input style="width: 20rem" type="text" v-model="map_lon" disabled/>
       <div class="btn-wrap">
         <button type="button" class="green-btn" @click="selectCoordinate">선택</button>
         <button type="button" class="gray-btn" @click="closeMap">취소</button>
@@ -341,15 +341,15 @@
       }
       //기본맵 세팅
       vm.$refs.open_layers.setBaseMap(vworldBaseLayer);
-      
+      console.log("맵열기!!!!!!!!!!")
       //노드위치로 이동     
        if(!vm.createMode){
-        vm.$refs.open_layers.removeLayer('nodePoint');
+        vm.$refs.open_layers.addVectorLayerByUrl('/common/getDongsGeoJson.json','nodeMap','EPSG:5181', baseStyles['MultiPolygon'],'MultiPolygon',vm.node.dong_cd);
         vm.$refs.open_layers.setCenterPosition(vm.node.lat,vm.node.lon,'EPSG:4326');
         vm.$refs.open_layers.createIcon(vm.node.lat,vm.node.lon,'/client/resources/images/icon/fin.png',0.3, 'nodePoint','EPSG:4326');
         vm.$refs.open_layers.setZoom(19);
        }else{
-        vm.$refs.open_layers.addVectorLayerByUrl('/common/getDongsGeoJson.json','nodeMap','EPSG:5181', baseStyles['MultiPolygon'],'MultiPolygon',vm.node.dong_cd);
+        vm.$refs.open_layers.addVectorLayerByUrl('/common/getDongsGeoJson.json','nodeMap','EPSG:5181', baseStyles['MultiPolygon'],'MultiPolygon',vm.address.dong_cd);
        }
     },
     
@@ -491,6 +491,16 @@
         return false;
       }
 
+      if (COMMON_UTIL.isEmpty(this.node.lat) === false) {
+        alert("위도를 입력해주세요.")
+        return false;
+      }
+
+      if (COMMON_UTIL.isEmpty(this.node.lon) === false) {
+        alert("경도를 입력해주세요.")
+        return false;
+      }
+
       this.modal_update = true;
     },  
 
@@ -614,6 +624,7 @@
       this.node = Object.assign({}, this.node_default);
       this.createMode = true;
       this.map_disabled = false;
+      this.dong_fullName = null;
     }
   },
   watch: {},
@@ -626,6 +637,7 @@
   mounted() {
     console.log("Main4 mounted");
     this.nodeSelectList();
+    
   },
 };
 </script>
Add a comment
List