yjryu / KERIS star
Stormen123 2023-12-01
231201 김성훈 매칭통계 총 합계 추가
@e38bd863dc56b4bcf6eccdc4840f097fe33afbe7
client/views/pages/admin/statistics/CorporatePRCenter.vue
--- client/views/pages/admin/statistics/CorporatePRCenter.vue
+++ client/views/pages/admin/statistics/CorporatePRCenter.vue
@@ -4,10 +4,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="companyListSearch.endDate" v-model="companyListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="companyListSearch.startDate">
+                    <input type="date" name="" id="" :max="companyListSearch.endDate" v-model="companyListSearch.startDate">
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="companyListSearch.startDate" :max="oneMonthLater" v-model="companyListSearch.endDate"> -->
-                    <input type="date" name="" id="" v-model="companyListSearch.endDate">
+                    <input type="date" name="" id="" :min="companyListSearch.startDate" :max="yesterDay" v-model="companyListSearch.endDate">
                     <button class="blue-btn" @click="typeCheck()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -123,7 +123,7 @@
                 endDate: null,
             },
 
-            oneMonthLater: COMMON_UTIL.yesterday(),
+            yesterDay: COMMON_UTIL.yesterday(),
             companyListByDate: [],
             companyListByDateCount: 0,
             companyViewTotal: {},
@@ -233,24 +233,24 @@
         
         typeCheck: function() {
             if(this.selectType == 'view') {
-                    this.postLogList();
+                    this.companyLogList();
             } else {
-                this.dwldLogList();
+                this.profileLogList();
             }
         },
 
-        dateCheck: function() {
-            if(COMMON_UTIL.isEmpty(this.postListSearch.endDate) === false) {
-                alert("날짜를 선택해주세요.");
-            } else {
+        // dateCheck: function() {
+        //     if(COMMON_UTIL.isEmpty(this.postListSearch.endDate) === false) {
+        //         alert("날짜를 선택해주세요.");
+        //     } else {
 
-                if(this.selectType == 'view') {
-                    this.postLogList();
-                } else {
-                    this.dwldLogList();
-                }
-            }
-        },
+        //         if(this.selectType == 'view') {
+        //             this.companyLogList();
+        //         } else {
+        //             this.profileLogList();
+        //         }
+        //     }
+        // },
     },
     watch: {
         // 'companyListSearch.startDate': function(newValue) {
client/views/pages/admin/statistics/Data.vue
--- client/views/pages/admin/statistics/Data.vue
+++ client/views/pages/admin/statistics/Data.vue
@@ -5,10 +5,10 @@
                 <div class="flex">
                     <div class="date-zone flex-start">
                         <!-- <input type="date" name="" id="" min="2023-11-24" :max="postListSearch.endDate" v-model="postListSearch.startDate"> -->
-                        <input type="date" name="" id="" v-model="postListSearch.startDate">
+                        <input type="date" name="" id="" :max="postListSearch.endDate" v-model="postListSearch.startDate">
                         <span>~</span>
                         <!-- <input type="date" name="" id="" :min="postListSearch.startDate" :max="oneMonthLater" v-model="postListSearch.endDate"> -->
-                        <input type="date" name="" id="" v-model="postListSearch.endDate">
+                        <input type="date" name="" id="" :min="postListSearch.startDate" :max="yesterDay" v-model="postListSearch.endDate">
                         <button class="blue-btn" @click="typeCheck()">조회</button>
                     </div>
                     <div class="date-check flex-end">
@@ -159,6 +159,7 @@
                 bbs_id: '0'
             },
 
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotalCount: {},
@@ -274,7 +275,7 @@
                 this.dwldLogList();
             }
         },
-        
+
         dateCheck: function() {
             if(COMMON_UTIL.isEmpty(this.postListSearch.endDate) === false) {
                 alert("날짜를 선택해주세요.");
client/views/pages/admin/statistics/MatchingStatistics.vue
--- client/views/pages/admin/statistics/MatchingStatistics.vue
+++ client/views/pages/admin/statistics/MatchingStatistics.vue
@@ -12,12 +12,12 @@
                         <div class="chart-top">
                             <div class="flex">
                                 <div class="date-zone flex-start">
-                                    <input type="date" name="" id="" min="2023-11-24" :max="listSearch.endDate"
-                                        v-model="listSearch.startDate">
+                                    <!-- <input type="date" name="" id="" min="2023-11-24" :max="listSearch.endDate" v-model="listSearch.startDate"> -->
+                                    <input type="date" name="" id="" :max="listSearch.endDate" v-model="listSearch.startDate">
                                     <span>~</span>
-                                    <input type="date" name="" id="" :min="listSearch.startDate" :max="oneMonthLater"
-                                        v-model="listSearch.endDate">
-                                    <button class="blue-btn" @click="listDateCheck()">조회</button>
+                                    <!-- <input type="date" name="" id="" :min="listSearch.startDate" :max="oneMonthLater" v-model="listSearch.endDate"> -->
+                                    <input type="date" name="" id="" :min="listSearch.startDate" :max="yesterDay" v-model="listSearch.endDate">
+                                    <button class="blue-btn" @click="listTypeCheck()">조회</button>
                                 </div>
                                 <div class="date-check flex-end">
                                     <div>
@@ -72,7 +72,7 @@
                                         <td>{{ item.progress_cnt }}</td>
                                         <td>{{ item.to_cnt }}</td>
                                         <td>{{ item.from_cnt }}</td>
-                                        <td>{{ item.to_cnt + item.from_cnt }}</td>
+                                        <td>{{ item.total_cnt }}</td>
                                     </tr>
                                 </tbody>
                             </table>
@@ -89,19 +89,19 @@
                                 <tbody>
                                     <tr>
                                         <th>합계</th>
-                                        <td>성공건수</td>
-                                        <td>실패건수</td>
-                                        <td>진행중인건수</td>
-                                        <td>요청받은건수</td>
-                                        <td>요청한 건수</td>
-                                        <td>전체 요청수</td>
+                                        <td>{{ totalCount.succesee_cnt }}</td>
+                                        <td>{{ totalCount.failed_cnt }}</td>
+                                        <td>{{ totalCount.progress_cnt }}</td>
+                                        <td>{{ totalCount.to_cnt }}</td>
+                                        <td>{{ totalCount.from_cnt }}</td>
+                                        <td>{{ totalCount.total_cnt}}</td>
                                     </tr>
                                 </tbody>
                             </table>
                         </div>
                         <div class="bottom-wrap">
                             <PaginationButton v-model:currentPage="listSearch.currentPage" :perPage="listSearch.perPage"
-                                :total-count="companySelectListCount" :max-range="5" :click="listDateCheck" />
+                                :total-count="companySelectListCount" :max-range="5" :click="listTypeCheck" />
                         </div>
                     </div>
                 </div>
@@ -110,12 +110,12 @@
                         <div class="chart-top">
                             <div class="flex">
                                 <div class="date-zone flex-start">
-                                    <input type="date" name="" id="" min="2023-11-24" :max="listSearch.endDate"
-                                        v-model="listSearch.startDate">
+                                    <!-- <input type="date" name="" id="" min="2023-11-24" :max="listSearch.endDate" v-model="listSearch.startDate"> -->
+                                    <input type="date" name="" id="" :max="listSearch.endDate" v-model="listSearch.startDate">
                                     <span>~</span>
-                                    <input type="date" name="" id="" :min="listSearch.startDate" :max="oneMonthLater"
-                                        v-model="listSearch.endDate">
-                                    <button class="blue-btn" @click="detailDateCheck()">조회</button>
+                                    <!-- <input type="date" name="" id="" :min="listSearch.startDate" :max="oneMonthLater" v-model="listSearch.endDate"> -->
+                                    <input type="date" name="" id="" :min="listSearch.startDate" :max="yesterDay" v-model="listSearch.endDate">
+                                    <button class="blue-btn" @click="detailTypeCheck()">조회</button>
                                 </div>
                                 <div class="date-check flex-end">
                                     <div>
@@ -184,7 +184,7 @@
                         </div>
                         <div class="bottom-wrap">
                             <PaginationButton v-model:currentPage="listSearch.currentPage" :perPage="listSearch.perPage"
-                                :total-count="companySelectListCount" :max-range="5" :click="detailDateCheck" />
+                                :total-count="companySelectListCount" :max-range="5" :click="detailTypeCheck" />
                         </div>
                     </div>
                 </div>
@@ -193,12 +193,9 @@
     </div>
 </template>
 <script>
-import { useStore } from "vuex";
 import axios from "axios";
 import COMMON_UTIL from '../../../../resources/js/commonUtil.js';
 import PaginationButton from '../../../component/pagination/PaginationButton.vue';
-
-
 
 export default {
 
@@ -212,13 +209,15 @@
             listSearch: {
                 currentPage: 1,
                 perPage: 10,
-                startDate: '2023-11-01',
-                endDate: COMMON_UTIL.today(),
+                startDate: null,
+                endDate: null,
             },
-            oneMonthLater: COMMON_UTIL.today(),
+            // oneMonthLater: COMMON_UTIL.today(),
+            yesterDay: COMMON_UTIL.yesterday(),
             companyList: [],
             companyStatisticsList: [],
             companySelectListCount: 0,
+            totalCount: {},
             companyDetailStatistics: [],
         };
     },
@@ -253,8 +252,9 @@
                 },
                 data: vm.listSearch
             }).then(function (response) {
-                vm.companyStatisticsList = response.data.companyPickStatistics;
+                vm.companyStatisticsList = response.data.data.companyPickStatistics;
                 vm.companySelectListCount = response.data.companySelectListCount;
+                vm.totalCount = response.data.data.totalCount;
             }).catch(function (error) {
                 console.log("error - ", error)
                 alert("PICK 통계 조회 오류, 관리자에게 문의하세요.");
@@ -272,8 +272,9 @@
                 },
                 data: vm.listSearch
             }).then(function (response) {
-                vm.companyStatisticsList = response.data.companyMatchingStatistics;
+                vm.companyStatisticsList = response.data.data.companyMatchingStatistics;
                 vm.companySelectListCount = response.data.companySelectListCount;
+                vm.totalCount = response.data.data.totalCount;
             }).catch(function (error) {
                 console.log("error - ", error)
                 alert("MATCHING 통계 조회 오류, 관리자에게 문의하세요.");
@@ -318,33 +319,50 @@
             })
         },
 
-        /**매칭관리 날짜선택 유효성 검사 */
-        listDateCheck: function () {
-            if (COMMON_UTIL.isEmpty(this.listSearch.endDate) === false) {
-                alert("날짜를 선택해주세요.");
+        /**매칭관리 타입 검사 */
+        listTypeCheck: function () {
+            if (this.selectedOption1 == 'pick') {
+                this.companyPickStatistics();
             } else {
-
-                if (this.selectedOption1 == 'pick') {
-                    this.companyPickStatistics();
-                } else {
-                    this.companyMatchingStatistics();
-                }
+                this.companyMatchingStatistics();
             }
         },
 
-        /**매칭관리 세부통계 날짜선택 유효성 검사 */
-        detailDateCheck: function () {
-            if (COMMON_UTIL.isEmpty(this.listSearch.endDate) === false) {
-                alert("날짜를 선택해주세요.");
-            } else {
+        // /**매칭관리 날짜선택 유효성 검사 */
+        // listDateCheck: function () {
+        //     if (COMMON_UTIL.isEmpty(this.listSearch.endDate) === false) {
+        //         alert("날짜를 선택해주세요.");
+        //     } else {
+        //         if (this.selectedOption1 == 'pick') {
+        //             this.companyPickStatistics();
+        //         } else {
+        //             this.companyMatchingStatistics();
+        //         }
+        //     }
+        // },
 
-                if (this.selectedOption1 == 'pick') {
-                    this.companyPickStatistics();
-                } else {
-                    this.companyMatchingStatistics();
-                }
+        /**매칭관리 세부통계 타입 검사 */
+        detailTypeCheck: function () {
+            if (this.selectedOption1 == 'pick') {
+                this.companyPickStatistics();
+            } else {
+                this.companyMatchingStatistics();
             }
         },
+
+        // /**매칭관리 세부통계 날짜선택 유효성 검사 */
+        // detailDateCheck: function () {
+        //     if (COMMON_UTIL.isEmpty(this.listSearch.endDate) === false) {
+        //         alert("날짜를 선택해주세요.");
+        //     } else {
+
+        //         if (this.selectedOption1 == 'pick') {
+        //             this.companyPickStatistics();
+        //         } else {
+        //             this.companyMatchingStatistics();
+        //         }
+        //     }
+        // },
 
         /** 기업 리스트 */
         companySelectList: function () {
@@ -365,15 +383,15 @@
         },
     },
     watch: {
-        'listSearch.startDate': function (newValue) {
-            let date = COMMON_UTIL.oneMonthLater(newValue);
-            this.listSearch.endDate = null;
-            if (date > COMMON_UTIL.today()) {
-                this.oneMonthLater = COMMON_UTIL.today();
-            } else {
-                this.oneMonthLater = date;
-            }
-        },
+        // 'listSearch.startDate': function (newValue) {
+        //     let date = COMMON_UTIL.oneMonthLater(newValue);
+        //     this.listSearch.endDate = null;
+        //     if (date > COMMON_UTIL.today()) {
+        //         this.oneMonthLater = COMMON_UTIL.today();
+        //     } else {
+        //         this.oneMonthLater = date;
+        //     }
+        // },
     },
     computed: {},
     components: {
client/views/pages/admin/statistics/Member.vue
--- client/views/pages/admin/statistics/Member.vue
+++ client/views/pages/admin/statistics/Member.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="loginListSearch.endDate" v-model="loginListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="loginListSearch.startDate">
+                    <input type="date" name="" id="" :max="loginListSearch.endDate" v-model="loginListSearch.startDate">
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="loginListSearch.startDate" :max="oneMonthLater" v-model="loginListSearch.endDate"> -->
-                    <input type="date" name="" id="" v-model="loginListSearch.endDate">
+                    <input type="date" name="" id="" :min="loginListSearch.startDate" :max="yesterDay" v-model="loginListSearch.endDate">
                     <button class="blue-btn" @click="loginLogList()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -106,6 +106,7 @@
                 type: 'day'
             },
             // oneMonthLater: COMMON_UTIL.yesterday(),
+            yesterDay: COMMON_UTIL.yesterday(),
             loginLogListByDate: [],
             loginLogListByDateCount: 0,
             loginSelectTotal:{},
client/views/pages/admin/statistics/MenuStatistics.vue
--- client/views/pages/admin/statistics/MenuStatistics.vue
+++ client/views/pages/admin/statistics/MenuStatistics.vue
@@ -5,10 +5,10 @@
                 <div class="flex">
                     <div class="date-zone flex-start">
                         <!-- <input type="date" name="" id="" min="2023-11-24" :max="logListSearch.endDate" v-model="logListSearch.startDate"> -->
-                        <input type="date" name="" id="" v-model="logListSearch.startDate">
+                        <input type="date" name="" id="" :max="logListSearch.endDate" v-model="logListSearch.startDate">
                         <span>~</span>
                         <!-- <input type="date" name="" id="" :min="logListSearch.startDate" :max="oneMonthLater" v-model="logListSearch.endDate"> -->
-                        <input type="date" name="" id="" v-model="logListSearch.endDate">
+                        <input type="date" name="" id="" :min="logListSearch.startDate" :max="yesterDay" v-model="logListSearch.endDate">
                         <button class="blue-btn" @click="typeCheck()">조회</button>
                     </div>
                     <div class="date-check flex-end">
@@ -197,6 +197,7 @@
             },
 
             // oneMonthLater: COMMON_UTIL.yesterday(),
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotal: {},
client/views/pages/admin/statistics/NewsAndPr.vue
--- client/views/pages/admin/statistics/NewsAndPr.vue
+++ client/views/pages/admin/statistics/NewsAndPr.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="postListSearch.endDate" v-model="postListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.startDate">
+                    <input type="date" name="" id="" :max="postListSearch.endDate" v-model="postListSearch.startDate">
                         <span>~</span>
                         <!-- <input type="date" name="" id="" :min="postListSearch.startDate" :max="oneMonthLater" v-model="postListSearch.endDate"> -->
-                        <input type="date" name="" id="" v-model="postListSearch.endDate">
+                        <input type="date" name="" id="" :min="postListSearch.startDate" :max="yesterDay" v-model="postListSearch.endDate">
                     <button class="blue-btn" @click="typeCheck()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -168,6 +168,7 @@
                 endDate: null,
                 bbs_id: '1'
             },
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotalCount: {},
client/views/pages/admin/statistics/Notice.vue
--- client/views/pages/admin/statistics/Notice.vue
+++ client/views/pages/admin/statistics/Notice.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="postListSearch.endDate" v-model="postListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.startDate">
+                    <input type="date" name="" id="" :max="postListSearch.endDate" v-model="postListSearch.startDate">
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="postListSearch.startDate" :max="oneMonthLater" v-model="postListSearch.endDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.endDate">
+                    <input type="date" name="" id="" :min="postListSearch.startDate" :max="yesterDay" v-model="postListSearch.endDate">
                     <button class="blue-btn" @click="typeCheck()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -168,6 +168,8 @@
                 endDate: null,
                 bbs_id: '2'
             },
+
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotalCount: {},
client/views/pages/admin/statistics/Tech.vue
--- client/views/pages/admin/statistics/Tech.vue
+++ client/views/pages/admin/statistics/Tech.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="postListSearch.endDate" v-model="postListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.startDate">
+                    <input type="date" name="" id="" :max="postListSearch.endDate" v-model="postListSearch.startDate">
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="postListSearch.startDate" :max="oneMonthLater" v-model="postListSearch.endDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.endDate">
+                    <input type="date" name="" id="" :min="postListSearch.startDate" :max="yesterDay" v-model="postListSearch.endDate">
                         <button class="blue-btn" @click="typeCheck()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -156,6 +156,8 @@
                 endDate: null,
                 bbs_id: '3'
             },
+
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotalCount: {},
client/views/pages/admin/statistics/Visit.vue
--- client/views/pages/admin/statistics/Visit.vue
+++ client/views/pages/admin/statistics/Visit.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="visitListSearch.endDate" v-model="visitListSearch.startDate" /> -->
-                    <input type="date" name="" id="" v-model="visitListSearch.startDate" />
+                    <input type="date" name="" id="" :max="visitListSearch.endDate" v-model="visitListSearch.startDate" />
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="visitListSearch.startDate" :max="oneMonthLater" v-model="visitListSearch.endDate" /> -->
-                    <input type="date" name="" id="" v-model="visitListSearch.endDate" />
+                    <input type="date" name="" id="" :min="visitListSearch.startDate" :max="yesterDay" v-model="visitListSearch.endDate" />
                     <button class="blue-btn" @click="visitSelectList()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -114,6 +114,7 @@
             },
 
             // oneMonthLater: COMMON_UTIL.yesterday(),
+            yesterDay: COMMON_UTIL.yesterday(),
             visitList: [],
             visitListCount: 0,
             totalCount:{},
client/views/pages/admin/statistics/WgCommunity.vue
--- client/views/pages/admin/statistics/WgCommunity.vue
+++ client/views/pages/admin/statistics/WgCommunity.vue
@@ -5,10 +5,10 @@
             <div class="flex">
                 <div class="date-zone flex-start">
                     <!-- <input type="date" name="" id="" min="2023-11-24" :max="postListSearch.endDate" v-model="postListSearch.startDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.startDate">
+                    <input type="date" name="" id="" :max="postListSearch.endDate" v-model="postListSearch.startDate">
                     <span>~</span>
                     <!-- <input type="date" name="" id="" :min="postListSearch.startDate" :max="oneMonthLater" v-model="postListSearch.endDate"> -->
-                    <input type="date" name="" id="" v-model="postListSearch.endDate">
+                    <input type="date" name="" id="" :min="postListSearch.startDate" :max="yesterDay" v-model="postListSearch.endDate">
                     <button class="blue-btn" @click="typeCheck()">조회</button>
                 </div>
                 <div class="date-check flex-end">
@@ -155,6 +155,8 @@
                 endDate: null,
                 bbs_id: '4'
             },
+
+            yesterDay: COMMON_UTIL.yesterday(),
             logListByDate: [],
             logListByDateCount: 0,
             logTotalCount: {},
Add a comment
List