
Merge branch 'front_end' of http://210.180.118.83/ysseo/crosswalk into front_end
@9cbcdfa545dd9ac918f38b5dcdffa4588c147312
--- client/views/pages/SystemManagement/ChargeManagement.vue
+++ client/views/pages/SystemManagement/ChargeManagement.vue
... | ... | @@ -5,14 +5,16 @@ |
5 | 5 |
<div class="float-right"> |
6 | 6 |
<form action=""> |
7 | 7 |
<label>등록일자</label> |
8 |
- <input type="date" name="" id="" /> |
|
8 |
+ <input type="date" value-format="yyyyMMdd" v-model="managerListSearch.startDate"/> |
|
9 | 9 |
<span>~</span> |
10 |
- <input type="date" name="" id="" /> |
|
11 |
- <select name="" id=""> |
|
10 |
+ <input type="date" value-format="yyyyMMdd" v-model="managerListSearch.endDate"/> |
|
11 |
+ <select name="condition" id="condition" v-model="managerListSearch.searchType"> |
|
12 | 12 |
<option value="">검색조건</option> |
13 |
+ <option value="mngr_nm">이름</option> |
|
14 |
+ <option value="mngr_ogdp_info">소속정보</option> |
|
13 | 15 |
</select> |
14 |
- <input type="text" /> |
|
15 |
- <button type="button" class="btn-2 green-btn">검색</button> |
|
16 |
+ <input type="search" placeholder="검색어를 입력 해주세요." v-model="managerListSearch.searchText" @keyup.enter="managerSelectList"/> |
|
17 |
+ <button type="button" class="btn-2 green-btn" @click="managerSelectList">검색</button> |
|
16 | 18 |
</form> |
17 | 19 |
</div> |
18 | 20 |
</div> |
... | ... | @@ -35,12 +37,12 @@ |
35 | 37 |
</tr> |
36 | 38 |
</thead> |
37 | 39 |
<tbody> |
38 |
- <tr> |
|
39 |
- <td>100</td> |
|
40 |
- <td>name_1</td> |
|
41 |
- <td>010-2134-7865</td> |
|
42 |
- <td>qwer1234@gmail.com</td> |
|
43 |
- <td>소속1</td> |
|
40 |
+ <tr v-for="(item, idx) in managerList" :key="idx" @click="managerSelectOnePage(item)"> |
|
41 |
+ <td data-title="NO">{{ idx + 1 }}</td> |
|
42 |
+ <td data-title="이름">{{ item['mngr_nm'] }}</td> |
|
43 |
+ <td data-title="전화번호">{{ item['mngr_telno'] }}</td> |
|
44 |
+ <td data-title="이메일">{{ item['mngr_eml'] }}</td> |
|
45 |
+ <td data-title="소속정보">{{ item['mngr_ogdp_info'] }}</td> |
|
44 | 46 |
</tr> |
45 | 47 |
</tbody> |
46 | 48 |
</table> |
... | ... | @@ -56,9 +58,7 @@ |
56 | 58 |
<a href="#" class="pg-item next">▶</a> |
57 | 59 |
</div> |
58 | 60 |
<div class="btn-wrap"> |
59 |
- <router-link to="/UserManagement.page"> |
|
60 |
- <span class="btn-2 green-btn">등록</span> |
|
61 |
- </router-link> |
|
61 |
+ <button @click="managerInsertPage" class="btn-2 green-btn">등록</button> |
|
62 | 62 |
</div> |
63 | 63 |
</div> |
64 | 64 |
</div> |
... | ... | @@ -66,15 +66,59 @@ |
66 | 66 |
</template> |
67 | 67 |
|
68 | 68 |
<script> |
69 |
+import axios from 'axios'; |
|
70 |
+ |
|
69 | 71 |
export default { |
70 |
- data() { |
|
71 |
- return {}; |
|
72 |
- }, |
|
73 |
- methods: {}, |
|
72 |
+ data: function () { |
|
73 |
+ return { |
|
74 |
+ managerListSearch: { |
|
75 |
+ currentPage: 1, |
|
76 |
+ perPage: 10, |
|
77 |
+ searchType: null, |
|
78 |
+ searchText: null, |
|
79 |
+ startDate: null, |
|
80 |
+ endDate: null |
|
81 |
+ }, |
|
82 |
+ managerListCount: 0, |
|
83 |
+ managerList: [], |
|
84 |
+ |
|
85 |
+ }; |
|
86 |
+ }, |
|
87 |
+ methods: { |
|
88 |
+ |
|
89 |
+ //횡단보도 유지보수 관리자 목록 조회 |
|
90 |
+ managerSelectList: function () { |
|
91 |
+ const vm = this; |
|
92 |
+ axios({ |
|
93 |
+ url: '/manager/managerSelectList.json', |
|
94 |
+ method: 'post', |
|
95 |
+ headers: { |
|
96 |
+ 'Content-Type': "application/json; charset=UTF-8", |
|
97 |
+ }, |
|
98 |
+ data: vm.managerListSearch |
|
99 |
+ }).then(function (response) { |
|
100 |
+ console.log("managerSelectList - response : ", response.data); |
|
101 |
+ vm.managerListCount = response.data.managerListCount |
|
102 |
+ vm.managerList = response.data.managerList; |
|
103 |
+ }).catch(function (error) { |
|
104 |
+ console.log("managerSelectList - error : ", error); |
|
105 |
+ alert('횡단보도 유지보수 관리자 목록 조회 오류, 관리자에게 문의해주세요.'); |
|
106 |
+ }); |
|
107 |
+ }, |
|
108 |
+ |
|
109 |
+ //횡단보도 유지보수 관리자 상세조회 페이지 이동 |
|
110 |
+ managerSelectOnePage: function (user) { |
|
111 |
+ this.$router.push({ path: '/', query: {}}); |
|
112 |
+ }, |
|
113 |
+ managerInsertPage: function() { |
|
114 |
+ this.$router.push({ path: '/ManagerAddForm.page'}); |
|
115 |
+ } |
|
116 |
+ }, |
|
74 | 117 |
watch: {}, |
75 | 118 |
computed: {}, |
76 | 119 |
mounted() { |
77 | 120 |
console.log("Main4 mounted"); |
121 |
+ this.managerSelectList(); |
|
78 | 122 |
}, |
79 | 123 |
}; |
80 | 124 |
</script> |
--- client/views/pages/SystemManagement/ManagerAddForm.vue
+++ client/views/pages/SystemManagement/ManagerAddForm.vue
... | ... | @@ -1,42 +1,32 @@ |
1 | 1 |
<template> |
2 | 2 |
<div class="wrap"> |
3 |
- <div class="tab-wrap"> |
|
4 |
- <ul> |
|
5 |
- <li> |
|
6 |
- <a href="" class="tab active">사용자 관리</a> |
|
7 |
- </li> |
|
8 |
- <li> |
|
9 |
- <a href="" class="tab">접속기록 조회</a> |
|
10 |
- </li> |
|
11 |
- </ul> |
|
12 |
- </div> |
|
13 | 3 |
<div> |
14 | 4 |
<div> |
15 | 5 |
<h2 class="page-title">횡단보도 유지보수 담당자</h2> |
16 | 6 |
</div> |
17 | 7 |
<hr class="margin"> |
18 | 8 |
<div class="form-wrap"> |
19 |
- <form action=""> |
|
20 |
- <div class="flex m-b"> |
|
21 |
- <span>이름 : </span> |
|
22 |
- <input type="text" name="" id="" placeholder="Name"> |
|
23 |
- </div> |
|
24 |
- <div class="flex m-b"> |
|
25 |
- <span>전화번호 : </span> |
|
26 |
- <input type="text" name="" id="" placeholder="Phone Number"> |
|
27 |
- </div> |
|
28 |
- <div class="flex m-b"> |
|
29 |
- <span>이메일 : </span> |
|
30 |
- <input type="text" name="" id="" placeholder="E-Mail"> |
|
31 |
- </div> |
|
9 |
+ <div class="flex m-b"> |
|
10 |
+ <span>이름 : </span> |
|
11 |
+ <input type="text" placeholder="Name" v-model="manager.mngr_nm"> |
|
12 |
+ </div> |
|
13 |
+ <div class="flex m-b"> |
|
14 |
+ <span>전화번호 : </span> |
|
15 |
+ <input type="text" placeholder="Phone Number" v-model="manager.mngr_telno"> |
|
16 |
+ </div> |
|
17 |
+ <div class="flex m-b"> |
|
18 |
+ <span>이메일 : </span> |
|
19 |
+ <input type="text" placeholder="E-Mail" v-model="manager.mngr_eml"> |
|
20 |
+ </div> |
|
21 |
+ <div class="flex m-b"> |
|
22 |
+ <span>소속명 : </span> |
|
23 |
+ <input type="text" placeholder="Affiliation Name" v-model="manager.mngr_ogdp_info"> |
|
24 |
+ </div> |
|
32 | 25 |
|
33 |
- <div class="btn-wrap"> |
|
34 |
- <button type="button" class="green-btn" @click="modal_1 = true">등록</button> |
|
35 |
- <router-link to="/UserManagement.page"> |
|
36 |
- <span class="btn-2 gray-btn">취소</span> |
|
37 |
- </router-link> |
|
38 |
- </div> |
|
39 |
- </form> |
|
26 |
+ <div class="btn-wrap"> |
|
27 |
+ <button type="button" class="green-btn" @click="managerInsertCheck">등록</button> |
|
28 |
+ <button class="btn-2 gray-btn" @click="managerSelectListPage">취소</button> |
|
29 |
+ </div> |
|
40 | 30 |
</div> |
41 | 31 |
</div> |
42 | 32 |
</div> |
... | ... | @@ -47,7 +37,7 @@ |
47 | 37 |
<div class="modal"> |
48 | 38 |
<p>사용자를 <span class="txt-point">등록</span>하시겠습니까?</p> |
49 | 39 |
<div class="btn-wrap"> |
50 |
- <button type="button" class="green-btn">확인</button> |
|
40 |
+ <button type="button" class="green-btn" @click="managerInsert">확인</button> |
|
51 | 41 |
<button type="button" class="gray-btn" @click="modal_1 = false">취소</button> |
52 | 42 |
</div> |
53 | 43 |
</div> |
... | ... | @@ -55,13 +45,61 @@ |
55 | 45 |
</template> |
56 | 46 |
|
57 | 47 |
<script> |
48 |
+import axios from 'axios'; |
|
49 |
+ |
|
58 | 50 |
export default { |
59 |
- data() { |
|
51 |
+ data: function() { |
|
60 | 52 |
return { |
53 |
+ manager: { |
|
54 |
+ mngr_nm: null, |
|
55 |
+ mngr_telno: null, |
|
56 |
+ mngr_eml: null, |
|
57 |
+ mngr_ogdp_info: null |
|
58 |
+ }, |
|
61 | 59 |
modal_1: false, |
62 | 60 |
}; |
63 | 61 |
}, |
64 |
- methods: {}, |
|
62 |
+ methods: { |
|
63 |
+ managerInsertCheck: function() { |
|
64 |
+ if (this.manager.mngr_nm === null || this.manager.mngr_nm === '') { |
|
65 |
+ alert('이름을 입력해주세요.'); |
|
66 |
+ return false; |
|
67 |
+ } |
|
68 |
+ |
|
69 |
+ this.modal_1 = true |
|
70 |
+ return true; |
|
71 |
+ }, |
|
72 |
+ |
|
73 |
+ managerInsert: function() { |
|
74 |
+ const vm = this; |
|
75 |
+ axios({ |
|
76 |
+ url: '/manager/managerInsert.json', |
|
77 |
+ method: 'post', |
|
78 |
+ herders: { |
|
79 |
+ 'Content-Type': "application/json; charset=UTF-8", |
|
80 |
+ }, |
|
81 |
+ data: vm.manager |
|
82 |
+ }).then(function (response) { |
|
83 |
+ console.log("managerInsert - response : ", response); |
|
84 |
+ let result = response.data; |
|
85 |
+ if (result > 0) { |
|
86 |
+ vm.managerSelectListPage(); |
|
87 |
+ } else { |
|
88 |
+ alert('등록 실패, 관리자에게 문의해주세요.'); |
|
89 |
+ console.log(vm.modal_1); |
|
90 |
+ vm.modal_1 = false; |
|
91 |
+ } |
|
92 |
+ }).catch(function(error) { |
|
93 |
+ console.log("managerInsert - error : ", error); |
|
94 |
+ alert('사용자 등록 오류, 관리자에게 문의해주세요.'); |
|
95 |
+ vm.modal_1 = false; |
|
96 |
+ }) |
|
97 |
+ }, |
|
98 |
+ |
|
99 |
+ managerSelectListPage: function () { |
|
100 |
+ this.$router.push({ path : '/ChargeManagement.page'}) |
|
101 |
+ } |
|
102 |
+ }, |
|
65 | 103 |
watch: {}, |
66 | 104 |
computed: {}, |
67 | 105 |
mounted() { |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?