Commit eab5869b03e5c5a63279253f1892e071bb24a0ed
1 parent
990f4a72
login
Showing
11 changed files
with
177 additions
and
266 deletions
src/api/login/index.ts
0 → 100644
| 1 | +import request from '../request' | ||
| 2 | +import { AxiosRequestConfig } from 'axios'; | ||
| 3 | + | ||
| 4 | +export const login = async ( params: any, data: any ) => { | ||
| 5 | + // let res: any = await request.post( '/login', data, {userName: '123', password: 'cmnt123'} ) | ||
| 6 | + let res: any = await request({ | ||
| 7 | + url: '/login', | ||
| 8 | + method: 'post', | ||
| 9 | + data: { | ||
| 10 | + userName: '123', | ||
| 11 | + password: 'cmnt123' | ||
| 12 | + } | ||
| 13 | + }) | ||
| 14 | + // let res: any = await request( {url: '/neighborhood/getList', params:{propertyId: 1, type: 1}, method: 'post' }) | ||
| 15 | + return res | ||
| 16 | +} | ||
| 0 | \ No newline at end of file | 17 | \ No newline at end of file |
src/api/property/index.ts
| @@ -20,6 +20,12 @@ export function propertyList (params) { | @@ -20,6 +20,12 @@ export function propertyList (params) { | ||
| 20 | }) | 20 | }) |
| 21 | } | 21 | } |
| 22 | 22 | ||
| 23 | +export const property_list = async ( params: any ) => { | ||
| 24 | + let res: any = await request.get( '/property/list', { params } ) | ||
| 25 | + // let res: any = await request( {url: '/neighborhood/getList', params:{propertyId: 1, type: 1}, method: 'post' }) | ||
| 26 | + return res | ||
| 27 | +} | ||
| 28 | + | ||
| 23 | /** | 29 | /** |
| 24 | * @description 新增物业 | 30 | * @description 新增物业 |
| 25 | * @function propertyAdd | 31 | * @function propertyAdd |
| @@ -42,4 +48,4 @@ export function propertyStatus (params) { | @@ -42,4 +48,4 @@ export function propertyStatus (params) { | ||
| 42 | url: '/property/updateStatus', | 48 | url: '/property/updateStatus', |
| 43 | params: params | 49 | params: params |
| 44 | }) | 50 | }) |
| 45 | -} | ||
| 46 | \ No newline at end of file | 51 | \ No newline at end of file |
| 52 | +} | ||
| 47 | \ No newline at end of file | 53 | \ No newline at end of file |
src/api/request.ts
| 1 | import axios from 'axios' | 1 | import axios from 'axios' |
| 2 | +import * as store from "@/pinia/index"; | ||
| 3 | +import router from '@/router' | ||
| 2 | 4 | ||
| 3 | // 不这样写报ts类型错误,import...有一个多余的boolean类型 | 5 | // 不这样写报ts类型错误,import...有一个多余的boolean类型 |
| 4 | let url: any = import.meta.env | 6 | let url: any = import.meta.env |
| 5 | let instance = axios.create({ | 7 | let instance = axios.create({ |
| 6 | baseURL: url.VITE_BASE_URL, | 8 | baseURL: url.VITE_BASE_URL, |
| 9 | + withCredentials: true, | ||
| 7 | timeout: 10000 | 10 | timeout: 10000 |
| 8 | }) | 11 | }) |
| 9 | 12 | ||
| 10 | instance.interceptors.request.use( | 13 | instance.interceptors.request.use( |
| 11 | config => { | 14 | config => { |
| 12 | config.headers['Accept'] = 'application/json' | 15 | config.headers['Accept'] = 'application/json' |
| 16 | + config.headers['Access-Control-Allow-Origin'] = '*' | ||
| 13 | // config.headers['type'] = 'formData' | 17 | // config.headers['type'] = 'formData' |
| 14 | - // config.headers['X-Token'] = 'my token' | 18 | + config.headers['X-Token'] = store.family.loginStore().token |
| 15 | return config | 19 | return config |
| 16 | }, | 20 | }, |
| 17 | error => { | 21 | error => { |
| @@ -21,6 +25,17 @@ instance.interceptors.request.use( | @@ -21,6 +25,17 @@ instance.interceptors.request.use( | ||
| 21 | 25 | ||
| 22 | instance.interceptors.response.use( | 26 | instance.interceptors.response.use( |
| 23 | response => { | 27 | response => { |
| 28 | + if(response) { | ||
| 29 | + console.log(response?.data?.errorCode) | ||
| 30 | + } | ||
| 31 | + switch(~~response?.data?.errorCode) { | ||
| 32 | + case 10002: | ||
| 33 | + console.log('跳转') | ||
| 34 | + router.push({ | ||
| 35 | + path: 'login' | ||
| 36 | + }) | ||
| 37 | + break; | ||
| 38 | + } | ||
| 24 | return response | 39 | return response |
| 25 | }, | 40 | }, |
| 26 | error => { | 41 | error => { |
src/components/Pagination/index.vue
| @@ -75,7 +75,7 @@ const emit = defineEmits<{ | @@ -75,7 +75,7 @@ const emit = defineEmits<{ | ||
| 75 | </template> | 75 | </template> |
| 76 | 76 | ||
| 77 | <style scoped lang="scss"> | 77 | <style scoped lang="scss"> |
| 78 | - .pagination-container { | ||
| 79 | - padding: 10px; | ||
| 80 | - } | ||
| 81 | -</style> | ||
| 82 | \ No newline at end of file | 78 | \ No newline at end of file |
| 79 | +.pagination-container { | ||
| 80 | + padding: 10px; | ||
| 81 | +} | ||
| 82 | +</style> |
src/layout/menu.vue
| @@ -49,240 +49,6 @@ let styleData = computed(()=>{ | @@ -49,240 +49,6 @@ let styleData = computed(()=>{ | ||
| 49 | <el-menu-item index="1-4-1">item one</el-menu-item> | 49 | <el-menu-item index="1-4-1">item one</el-menu-item> |
| 50 | </el-sub-menu> | 50 | </el-sub-menu> |
| 51 | </el-sub-menu> | 51 | </el-sub-menu> |
| 52 | - <el-sub-menu index="1"> | ||
| 53 | - <template #title> | ||
| 54 | - <el-icon><location /></el-icon> | ||
| 55 | - <span>Navigator One</span> | ||
| 56 | - </template> | ||
| 57 | - <el-menu-item-group> | ||
| 58 | - <template #title><span>Group One</span></template> | ||
| 59 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 60 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 61 | - </el-menu-item-group> | ||
| 62 | - <el-menu-item-group title="Group Two"> | ||
| 63 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 64 | - </el-menu-item-group> | ||
| 65 | - <el-sub-menu index="1-4"> | ||
| 66 | - <template #title><span>item four</span></template> | ||
| 67 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 68 | - </el-sub-menu> | ||
| 69 | - </el-sub-menu> | ||
| 70 | - <el-sub-menu index="1"> | ||
| 71 | - <template #title> | ||
| 72 | - <el-icon><location /></el-icon> | ||
| 73 | - <span>Navigator One</span> | ||
| 74 | - </template> | ||
| 75 | - <el-menu-item-group> | ||
| 76 | - <template #title><span>Group One</span></template> | ||
| 77 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 78 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 79 | - </el-menu-item-group> | ||
| 80 | - <el-menu-item-group title="Group Two"> | ||
| 81 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 82 | - </el-menu-item-group> | ||
| 83 | - <el-sub-menu index="1-4"> | ||
| 84 | - <template #title><span>item four</span></template> | ||
| 85 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 86 | - </el-sub-menu> | ||
| 87 | - </el-sub-menu> | ||
| 88 | - <el-sub-menu index="1"> | ||
| 89 | - <template #title> | ||
| 90 | - <el-icon><location /></el-icon> | ||
| 91 | - <span>Navigator One</span> | ||
| 92 | - </template> | ||
| 93 | - <el-menu-item-group> | ||
| 94 | - <template #title><span>Group One</span></template> | ||
| 95 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 96 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 97 | - </el-menu-item-group> | ||
| 98 | - <el-menu-item-group title="Group Two"> | ||
| 99 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 100 | - </el-menu-item-group> | ||
| 101 | - <el-sub-menu index="1-4"> | ||
| 102 | - <template #title><span>item four</span></template> | ||
| 103 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 104 | - </el-sub-menu> | ||
| 105 | - </el-sub-menu> | ||
| 106 | - <el-sub-menu index="1"> | ||
| 107 | - <template #title> | ||
| 108 | - <el-icon><location /></el-icon> | ||
| 109 | - <span>Navigator One</span> | ||
| 110 | - </template> | ||
| 111 | - <el-menu-item-group> | ||
| 112 | - <template #title><span>Group One</span></template> | ||
| 113 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 114 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 115 | - </el-menu-item-group> | ||
| 116 | - <el-menu-item-group title="Group Two"> | ||
| 117 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 118 | - </el-menu-item-group> | ||
| 119 | - <el-sub-menu index="1-4"> | ||
| 120 | - <template #title><span>item four</span></template> | ||
| 121 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 122 | - </el-sub-menu> | ||
| 123 | - </el-sub-menu> | ||
| 124 | - <el-sub-menu index="1"> | ||
| 125 | - <template #title> | ||
| 126 | - <el-icon><location /></el-icon> | ||
| 127 | - <span>Navigator One</span> | ||
| 128 | - </template> | ||
| 129 | - <el-menu-item-group> | ||
| 130 | - <template #title><span>Group One</span></template> | ||
| 131 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 132 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 133 | - </el-menu-item-group> | ||
| 134 | - <el-menu-item-group title="Group Two"> | ||
| 135 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 136 | - </el-menu-item-group> | ||
| 137 | - <el-sub-menu index="1-4"> | ||
| 138 | - <template #title><span>item four</span></template> | ||
| 139 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 140 | - </el-sub-menu> | ||
| 141 | - </el-sub-menu> | ||
| 142 | - <el-sub-menu index="1"> | ||
| 143 | - <template #title> | ||
| 144 | - <el-icon><location /></el-icon> | ||
| 145 | - <span>Navigator One</span> | ||
| 146 | - </template> | ||
| 147 | - <el-menu-item-group> | ||
| 148 | - <template #title><span>Group One</span></template> | ||
| 149 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 150 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 151 | - </el-menu-item-group> | ||
| 152 | - <el-menu-item-group title="Group Two"> | ||
| 153 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 154 | - </el-menu-item-group> | ||
| 155 | - <el-sub-menu index="1-4"> | ||
| 156 | - <template #title><span>item four</span></template> | ||
| 157 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 158 | - </el-sub-menu> | ||
| 159 | - </el-sub-menu> | ||
| 160 | - <el-sub-menu index="1"> | ||
| 161 | - <template #title> | ||
| 162 | - <el-icon><location /></el-icon> | ||
| 163 | - <span>Navigator One</span> | ||
| 164 | - </template> | ||
| 165 | - <el-menu-item-group> | ||
| 166 | - <template #title><span>Group One</span></template> | ||
| 167 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 168 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 169 | - </el-menu-item-group> | ||
| 170 | - <el-menu-item-group title="Group Two"> | ||
| 171 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 172 | - </el-menu-item-group> | ||
| 173 | - <el-sub-menu index="1-4"> | ||
| 174 | - <template #title><span>item four</span></template> | ||
| 175 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 176 | - </el-sub-menu> | ||
| 177 | - </el-sub-menu> | ||
| 178 | - <el-sub-menu index="1"> | ||
| 179 | - <template #title> | ||
| 180 | - <el-icon><location /></el-icon> | ||
| 181 | - <span>Navigator One</span> | ||
| 182 | - </template> | ||
| 183 | - <el-menu-item-group> | ||
| 184 | - <template #title><span>Group One</span></template> | ||
| 185 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 186 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 187 | - </el-menu-item-group> | ||
| 188 | - <el-menu-item-group title="Group Two"> | ||
| 189 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 190 | - </el-menu-item-group> | ||
| 191 | - <el-sub-menu index="1-4"> | ||
| 192 | - <template #title><span>item four</span></template> | ||
| 193 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 194 | - </el-sub-menu> | ||
| 195 | - </el-sub-menu> | ||
| 196 | - <el-sub-menu index="1"> | ||
| 197 | - <template #title> | ||
| 198 | - <el-icon><location /></el-icon> | ||
| 199 | - <span>Navigator One</span> | ||
| 200 | - </template> | ||
| 201 | - <el-menu-item-group> | ||
| 202 | - <template #title><span>Group One</span></template> | ||
| 203 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 204 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 205 | - </el-menu-item-group> | ||
| 206 | - <el-menu-item-group title="Group Two"> | ||
| 207 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 208 | - </el-menu-item-group> | ||
| 209 | - <el-sub-menu index="1-4"> | ||
| 210 | - <template #title><span>item four</span></template> | ||
| 211 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 212 | - </el-sub-menu> | ||
| 213 | - </el-sub-menu> | ||
| 214 | - <el-sub-menu index="1"> | ||
| 215 | - <template #title> | ||
| 216 | - <el-icon><location /></el-icon> | ||
| 217 | - <span>Navigator One</span> | ||
| 218 | - </template> | ||
| 219 | - <el-menu-item-group> | ||
| 220 | - <template #title><span>Group One</span></template> | ||
| 221 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 222 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 223 | - </el-menu-item-group> | ||
| 224 | - <el-menu-item-group title="Group Two"> | ||
| 225 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 226 | - </el-menu-item-group> | ||
| 227 | - <el-sub-menu index="1-4"> | ||
| 228 | - <template #title><span>item four</span></template> | ||
| 229 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 230 | - </el-sub-menu> | ||
| 231 | - </el-sub-menu> | ||
| 232 | - <el-sub-menu index="1"> | ||
| 233 | - <template #title> | ||
| 234 | - <el-icon><location /></el-icon> | ||
| 235 | - <span>Navigator One</span> | ||
| 236 | - </template> | ||
| 237 | - <el-menu-item-group> | ||
| 238 | - <template #title><span>Group One</span></template> | ||
| 239 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 240 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 241 | - </el-menu-item-group> | ||
| 242 | - <el-menu-item-group title="Group Two"> | ||
| 243 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 244 | - </el-menu-item-group> | ||
| 245 | - <el-sub-menu index="1-4"> | ||
| 246 | - <template #title><span>item four</span></template> | ||
| 247 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 248 | - </el-sub-menu> | ||
| 249 | - </el-sub-menu> | ||
| 250 | - <el-sub-menu index="1"> | ||
| 251 | - <template #title> | ||
| 252 | - <el-icon><location /></el-icon> | ||
| 253 | - <span>Navigator One</span> | ||
| 254 | - </template> | ||
| 255 | - <el-menu-item-group> | ||
| 256 | - <template #title><span>Group One</span></template> | ||
| 257 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 258 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 259 | - </el-menu-item-group> | ||
| 260 | - <el-menu-item-group title="Group Two"> | ||
| 261 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 262 | - </el-menu-item-group> | ||
| 263 | - <el-sub-menu index="1-4"> | ||
| 264 | - <template #title><span>item four</span></template> | ||
| 265 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 266 | - </el-sub-menu> | ||
| 267 | - </el-sub-menu> | ||
| 268 | - <el-sub-menu index="1"> | ||
| 269 | - <template #title> | ||
| 270 | - <el-icon><location /></el-icon> | ||
| 271 | - <span>Navigator One</span> | ||
| 272 | - </template> | ||
| 273 | - <el-menu-item-group> | ||
| 274 | - <template #title><span>Group One</span></template> | ||
| 275 | - <el-menu-item index="1-1">item one</el-menu-item> | ||
| 276 | - <el-menu-item index="1-2">item two</el-menu-item> | ||
| 277 | - </el-menu-item-group> | ||
| 278 | - <el-menu-item-group title="Group Two"> | ||
| 279 | - <el-menu-item index="1-3">item three</el-menu-item> | ||
| 280 | - </el-menu-item-group> | ||
| 281 | - <el-sub-menu index="1-4"> | ||
| 282 | - <template #title><span>item four</span></template> | ||
| 283 | - <el-menu-item index="1-4-1">item one</el-menu-item> | ||
| 284 | - </el-sub-menu> | ||
| 285 | - </el-sub-menu> | ||
| 286 | <el-menu-item index="2"> | 52 | <el-menu-item index="2"> |
| 287 | <el-icon><icon-menu /></el-icon> | 53 | <el-icon><icon-menu /></el-icon> |
| 288 | <template #title>Navigator Two</template> | 54 | <template #title>Navigator Two</template> |
src/pinia/index.ts
| @@ -5,7 +5,7 @@ import menu from './modules/menu' | @@ -5,7 +5,7 @@ import menu from './modules/menu' | ||
| 5 | 5 | ||
| 6 | // 获取modules文件夹下面所有ts文件 | 6 | // 获取modules文件夹下面所有ts文件 |
| 7 | let files = import.meta.globEager('./modules/*.ts') | 7 | let files = import.meta.globEager('./modules/*.ts') |
| 8 | -let modules = {}, allStore = {}, family = {} | 8 | +let modules:any = {}, allStore:any = {}, family: any = {} |
| 9 | for(let file in files) { | 9 | for(let file in files) { |
| 10 | const moduleName = file.replace(/(.*\/)*([^.]+).*/gi, '$2') | 10 | const moduleName = file.replace(/(.*\/)*([^.]+).*/gi, '$2') |
| 11 | modules = { ...modules, ...files[file] } | 11 | modules = { ...modules, ...files[file] } |
src/pinia/modules/login.ts
0 → 100644
| 1 | +const id = 'login' | ||
| 2 | +const state = () => ({ | ||
| 3 | + token: '', | ||
| 4 | +}) | ||
| 5 | +const getters = { | ||
| 6 | + // getCollapseStatus () { | ||
| 7 | + // return this.isCollapse | ||
| 8 | + // } | ||
| 9 | + getToken() { | ||
| 10 | + return this.token | ||
| 11 | + } | ||
| 12 | +} | ||
| 13 | +const actions = { | ||
| 14 | + setToken(tokenStr: string) { | ||
| 15 | + this.token = tokenStr | ||
| 16 | + } | ||
| 17 | +} | ||
| 18 | + | ||
| 19 | +export default { | ||
| 20 | + namespace: true, | ||
| 21 | + actions, | ||
| 22 | + getters, | ||
| 23 | + state, | ||
| 24 | + id | ||
| 25 | +} | ||
| 0 | \ No newline at end of file | 26 | \ No newline at end of file |
src/utils/progress.ts
| @@ -6,21 +6,24 @@ NProgress.configure({ showSpinner: false }) | @@ -6,21 +6,24 @@ NProgress.configure({ showSpinner: false }) | ||
| 6 | 6 | ||
| 7 | router.beforeEach((to: any, from: any, next: any) => { | 7 | router.beforeEach((to: any, from: any, next: any) => { |
| 8 | NProgress.start() | 8 | NProgress.start() |
| 9 | - const hasToken = 1 && 1 | 9 | + const hasToken = true |
| 10 | const whiteList = ['/login'] | 10 | const whiteList = ['/login'] |
| 11 | 11 | ||
| 12 | // TIP 页面标题设置 | 12 | // TIP 页面标题设置 |
| 13 | globalThis.document.title = to.meta.title? to.meta.title: import.meta.env.VITE_APP_TITLE | 13 | globalThis.document.title = to.meta.title? to.meta.title: import.meta.env.VITE_APP_TITLE |
| 14 | 14 | ||
| 15 | if (hasToken) { | 15 | if (hasToken) { |
| 16 | + console.log('has') | ||
| 16 | if (to.path === '/login') { | 17 | if (to.path === '/login') { |
| 17 | - next({ path: '/about' }) | 18 | + // next({ path: '/about' }) |
| 19 | + next() | ||
| 18 | NProgress.done() | 20 | NProgress.done() |
| 19 | } else { | 21 | } else { |
| 20 | next() | 22 | next() |
| 21 | NProgress.done() | 23 | NProgress.done() |
| 22 | } | 24 | } |
| 23 | } else { | 25 | } else { |
| 26 | + console.log('hasno t') | ||
| 24 | if (whiteList.indexOf(to.path) !== -1) { | 27 | if (whiteList.indexOf(to.path) !== -1) { |
| 25 | next() | 28 | next() |
| 26 | } else { | 29 | } else { |
src/views/property/index.vue
| 1 | <script setup lang="ts"> | 1 | <script setup lang="ts"> |
| 2 | -import { reactive, ref } from "vue"; | ||
| 3 | -import { propertyList } from "@/api/tengxi"; | 2 | +import { reactive, ref, onMounted } from "vue"; |
| 3 | +import { property_list } from "@/api/property"; | ||
| 4 | import Pagination from "@/components/Pagination/index.vue"; | 4 | import Pagination from "@/components/Pagination/index.vue"; |
| 5 | -let data = reactive([]); | 5 | +let data = reactive({ |
| 6 | + list: [] | ||
| 7 | +}) | ||
| 6 | let loading = ref(false); | 8 | let loading = ref(false); |
| 7 | let params = reactive({ | 9 | let params = reactive({ |
| 8 | total: 0, | 10 | total: 0, |
| 9 | query: { | 11 | query: { |
| 10 | page: 1, | 12 | page: 1, |
| 11 | - pageSize: 10 | ||
| 12 | - } | ||
| 13 | -}) | 13 | + pageSize: 10, |
| 14 | + }, | ||
| 15 | +}); | ||
| 14 | const handlePageChange = (page, size) => { | 16 | const handlePageChange = (page, size) => { |
| 15 | - params.query.page = page | ||
| 16 | - params.query.pageSize = size | ||
| 17 | -} | ||
| 18 | -propertyList() | ||
| 19 | - .then((res) => { | ||
| 20 | - console.log(res); | ||
| 21 | - }) | ||
| 22 | - .catch((error) => { | ||
| 23 | - console.log(error); | ||
| 24 | - }); | 17 | + params.query.page = page; |
| 18 | + params.query.pageSize = size; | ||
| 19 | +}; | ||
| 20 | +const handleLogin = async () => { | ||
| 21 | + try { | ||
| 22 | + const res = await property_list(); | ||
| 23 | + console.log(res.data.data.list); | ||
| 24 | + data.list = res.data.data.list | ||
| 25 | + } catch (e) { | ||
| 26 | + console.log(e) | ||
| 27 | + } | ||
| 28 | +}; | ||
| 29 | + | ||
| 30 | +onMounted(() => { | ||
| 31 | + try{ | ||
| 32 | + handleLogin() | ||
| 33 | + } catch(e) { | ||
| 34 | + console.log(e) | ||
| 35 | + } | ||
| 36 | +}); | ||
| 25 | </script> | 37 | </script> |
| 26 | 38 | ||
| 27 | <template> | 39 | <template> |
| 28 | <div class="page-container"> | 40 | <div class="page-container"> |
| 41 | + <h1>物业列表</h1> | ||
| 29 | <el-table | 42 | <el-table |
| 30 | - :data="data" | 43 | + :data="data.list" |
| 31 | style="width: 100%" | 44 | style="width: 100%" |
| 32 | border | 45 | border |
| 33 | v-loading="loading" | 46 | v-loading="loading" |
| 47 | + align="center" | ||
| 34 | element-loading-text="拼命加载中" | 48 | element-loading-text="拼命加载中" |
| 35 | > | 49 | > |
| 36 | - <el-table-column prop="date" label="日期" width="180"> </el-table-column> | ||
| 37 | - <el-table-column prop="name" label="姓名" width="180"> </el-table-column> | ||
| 38 | - <el-table-column prop="address" label="地址"> </el-table-column> | 50 | + <el-table-column prop="location" label="地区" width="180"> |
| 51 | + </el-table-column> | ||
| 52 | + <el-table-column prop="address" label="详细地址" width="180"> | ||
| 53 | + </el-table-column> | ||
| 54 | + <el-table-column prop="name" label="公司名称" width="180"> | ||
| 55 | + </el-table-column> | ||
| 56 | + <el-table-column prop="userName" label="联系人" width="180"> | ||
| 57 | + </el-table-column> | ||
| 58 | + <el-table-column prop="userPhone" label="联系电话" width="180"> | ||
| 59 | + </el-table-column> | ||
| 60 | + <el-table-column prop="businessLicense" label="营业执照" width="180"> | ||
| 61 | + </el-table-column> | ||
| 62 | + <el-table-column prop="createTime" label="入驻时间" width="180"> | ||
| 63 | + </el-table-column> | ||
| 64 | + <el-table-column prop="contractNumber" label="合同编号" width="180"> | ||
| 65 | + </el-table-column> | ||
| 39 | <el-table-column prop="status" label="状态"> | 66 | <el-table-column prop="status" label="状态"> |
| 40 | <template #default="scope"> | 67 | <template #default="scope"> |
| 41 | {{ scope.row.status }} | 68 | {{ scope.row.status }} |
| 42 | </template> | 69 | </template> |
| 43 | </el-table-column> | 70 | </el-table-column> |
| 44 | - <el-table-column label="按钮"> | 71 | + <el-table-column label="操作"> |
| 45 | <template #default="scope"> | 72 | <template #default="scope"> |
| 46 | - <el-button type="primary">哈哈</el-button> | 73 | + <el-button type="primary">代理登录</el-button> |
| 74 | + <el-button type="primary">删除</el-button> | ||
| 47 | </template> | 75 | </template> |
| 48 | </el-table-column> | 76 | </el-table-column> |
| 49 | </el-table> | 77 | </el-table> |
src/views/resident/index.vue
| 1 | <script setup lang="ts"> | 1 | <script setup lang="ts"> |
| 2 | +import { reactive, ref } from "vue"; | ||
| 3 | +import { propertyList } from "@/api/tengxi"; | ||
| 4 | +import Pagination from "@/components/Pagination/index.vue"; | ||
| 5 | +let data = reactive([]); | ||
| 6 | +let loading = ref(false); | ||
| 7 | +let params = reactive({ | ||
| 8 | + total: 0, | ||
| 9 | + query: { | ||
| 10 | + page: 1, | ||
| 11 | + pageSize: 10, | ||
| 12 | + }, | ||
| 13 | +}); | ||
| 14 | +const handlePageChange = (page, size) => { | ||
| 15 | + params.query.page = page; | ||
| 16 | + params.query.pageSize = size; | ||
| 17 | +}; | ||
| 2 | </script> | 18 | </script> |
| 3 | 19 | ||
| 4 | <template> | 20 | <template> |
| 5 | <div class="page-container"> | 21 | <div class="page-container"> |
| 6 | - resident index | 22 | + <h1>居民列表</h1> |
| 23 | + <el-table | ||
| 24 | + :data="data" | ||
| 25 | + style="width: 100%" | ||
| 26 | + border | ||
| 27 | + v-loading="loading" | ||
| 28 | + element-loading-text="拼命加载中" | ||
| 29 | + > | ||
| 30 | + <el-table-column prop="date" label="日期" width="180"> </el-table-column> | ||
| 31 | + <el-table-column prop="name" label="姓名" width="180"> </el-table-column> | ||
| 32 | + <el-table-column prop="address" label="地址"> </el-table-column> | ||
| 33 | + <el-table-column prop="status" label="状态"> | ||
| 34 | + <template #default="scope"> | ||
| 35 | + {{ scope.row.status }} | ||
| 36 | + </template> | ||
| 37 | + </el-table-column> | ||
| 38 | + <el-table-column label="按钮"> | ||
| 39 | + <template #default="scope"> | ||
| 40 | + <el-button type="primary">哈哈</el-button> | ||
| 41 | + </template> | ||
| 42 | + </el-table-column> | ||
| 43 | + </el-table> | ||
| 44 | + <Pagination | ||
| 45 | + :total="params.total" | ||
| 46 | + :currentPage="params.query.page" | ||
| 47 | + :pageSize="params.query.pageSize" | ||
| 48 | + @pageChange="handlePageChange" | ||
| 49 | + ></Pagination> | ||
| 7 | </div> | 50 | </div> |
| 8 | </template> | 51 | </template> |
src/views/user/login.vue
| 1 | <script setup lang="ts"> | 1 | <script setup lang="ts"> |
| 2 | +import { login } from '@/api/login' | ||
| 3 | +import * as store from "@/pinia/index"; | ||
| 4 | +login().then(res => { | ||
| 5 | + console.log(res) | ||
| 6 | + console.log(store.family.loginStore().token) | ||
| 7 | + if(res) { | ||
| 8 | + store.family.loginStore().setToken(res.data.data.token) | ||
| 9 | + } | ||
| 10 | +}) | ||
| 2 | </script> | 11 | </script> |
| 3 | 12 | ||
| 4 | <template> | 13 | <template> |