refactor(dev): 调整开发环境配置并更新路由相关代码
- 修改 .env.development 文件中的 VITE_BASE_PATH 为本地地址 - 在 pathInfo.json 中添加订单管理相关页面的路径信息 - 更新 router.js 中的异步路由获取逻辑,使用 getMenuList 替代原 asyncMenu
This commit is contained in:
		@@ -8,4 +8,4 @@ VITE_POSITION = close
 | 
			
		||||
VITE_EDITOR = vscode
 | 
			
		||||
// VITE_EDITOR = webstorm 如果使用webstorm开发且要使用dom定位到代码行功能 请先自定添加 webstorm到环境变量 再将VITE_EDITOR值修改为webstorm
 | 
			
		||||
// 如果使用docker-compose开发模式,设置为下面的地址或本机主机IP
 | 
			
		||||
//VITE_BASE_PATH = http://177.7.0.12
 | 
			
		||||
//VITE_BASE_PATH = http://127.0.0.1
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										14
									
								
								src/api/order/index.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/api/order/index.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
import service from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
// @tag Order
 | 
			
		||||
// @summary 获取订单列表
 | 
			
		||||
// @param {object} params
 | 
			
		||||
// @return {object} data
 | 
			
		||||
// @router get /order/list
 | 
			
		||||
export const list = (params) => {
 | 
			
		||||
    return service({
 | 
			
		||||
      url: '/order/list',
 | 
			
		||||
      method: 'get',
 | 
			
		||||
      params
 | 
			
		||||
    })
 | 
			
		||||
}
 | 
			
		||||
@@ -70,5 +70,7 @@
 | 
			
		||||
  "/src/view/systemTools/system/system.vue": "Config",
 | 
			
		||||
  "/src/plugin/announcement/form/info.vue": "InfoForm",
 | 
			
		||||
  "/src/plugin/announcement/view/info.vue": "Info",
 | 
			
		||||
  "/src/plugin/email/view/index.vue": "Email"
 | 
			
		||||
  "/src/plugin/email/view/index.vue": "Email",
 | 
			
		||||
  "/src/view/order/idnex.vue": "OrderManage",
 | 
			
		||||
  "/src/view/order/order/index.vue": "Order"
 | 
			
		||||
}
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
import { asyncRouterHandle } from '@/utils/asyncRouter'
 | 
			
		||||
import { emitter } from '@/utils/bus.js'
 | 
			
		||||
import { asyncMenu } from '@/api/menu'
 | 
			
		||||
import { asyncMenu, getMenuList } from '@/api/menu'
 | 
			
		||||
import { defineStore } from 'pinia'
 | 
			
		||||
import { ref, watchEffect } from 'vue'
 | 
			
		||||
import pathInfo from '@/pathInfo.json'
 | 
			
		||||
@@ -106,8 +106,10 @@ export const useRouterStore = defineStore('router', () => {
 | 
			
		||||
        children: []
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
    const asyncRouterRes = await asyncMenu()
 | 
			
		||||
    const asyncRouter = asyncRouterRes.data.menus
 | 
			
		||||
    // const asyncRouterRes = await asyncMenu()
 | 
			
		||||
    const asyncRouterRes = await getMenuList()
 | 
			
		||||
    // const asyncRouter = asyncRouterRes.data.menus
 | 
			
		||||
    const asyncRouter = asyncRouterRes.data
 | 
			
		||||
    asyncRouter &&
 | 
			
		||||
      asyncRouter.push({
 | 
			
		||||
        path: 'reload',
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										21
									
								
								src/view/order/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								src/view/order/index.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
<template>
 | 
			
		||||
    <div>
 | 
			
		||||
      <router-view v-slot="{ Component }">
 | 
			
		||||
        <transition mode="out-in" name="el-fade-in-linear">
 | 
			
		||||
          <keep-alive :include="routerStore.keepAliveRouters">
 | 
			
		||||
            <component :is="Component" />
 | 
			
		||||
          </keep-alive>
 | 
			
		||||
        </transition>
 | 
			
		||||
      </router-view>
 | 
			
		||||
    </div>
 | 
			
		||||
  </template>
 | 
			
		||||
  
 | 
			
		||||
  <script setup>
 | 
			
		||||
    import { useRouterStore } from '@/pinia/modules/router'
 | 
			
		||||
    const routerStore = useRouterStore()
 | 
			
		||||
  
 | 
			
		||||
    defineOptions({
 | 
			
		||||
      name: 'OrderManage'
 | 
			
		||||
    })
 | 
			
		||||
  </script>
 | 
			
		||||
  
 | 
			
		||||
							
								
								
									
										92
									
								
								src/view/order/order/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								src/view/order/order/index.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,92 @@
 | 
			
		||||
<template>
 | 
			
		||||
    <div >
 | 
			
		||||
        <data class="gva-search-box2">
 | 
			
		||||
            <el-form :inline="true" ref="formRef" :model="paramsQuery" class="demo-form-inline">
 | 
			
		||||
                <el-form-item label="订单号">
 | 
			
		||||
                    <el-input v-model="paramsQuery.orderId" placeholder="请输入" clearable />
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
                <el-form-item label="订单时间">
 | 
			
		||||
                    <el-date-picker
 | 
			
		||||
                        v-model="queryTime"
 | 
			
		||||
                        type="daterange"
 | 
			
		||||
                        unlink-panels
 | 
			
		||||
                        range-separator="至"
 | 
			
		||||
                        start-placeholder="开始时间"
 | 
			
		||||
                        end-placeholder="结束时间"
 | 
			
		||||
                        value-format="YYYY-MM-DD"
 | 
			
		||||
                        style="width:100%"
 | 
			
		||||
                    />
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
                <el-form-item>
 | 
			
		||||
                    <el-button type="primary" @click="onSubmit(formRef)">查询</el-button>
 | 
			
		||||
                    <el-button @click="reset(formRef)">重置</el-button>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
            </el-form>
 | 
			
		||||
        </data>
 | 
			
		||||
        <div class="gva-table-box">
 | 
			
		||||
            <el-table :data="tableData" style="width: 100%">
 | 
			
		||||
                <el-table-column type="index" label="序号" width="120" />
 | 
			
		||||
                <el-table-column prop="order_no" label="订单号" width="180" />
 | 
			
		||||
                <el-table-column prop="name" label="商品名称" />
 | 
			
		||||
                <el-table-column prop="price" label="价格" />
 | 
			
		||||
                <el-table-column prop="order_type" label="类型" />
 | 
			
		||||
                <el-table-column prop="status" label="状态" />
 | 
			
		||||
                <el-table-column prop="CreatedAt" label="创建时间" />
 | 
			
		||||
                <el-table-column prop="UpdatedAt" label="更新时间" />
 | 
			
		||||
                <el-table-column label="操作" fixed="right" width="100">
 | 
			
		||||
                    <template #default="scope">
 | 
			
		||||
                        <!-- <el-button type="text" @click="handleEdit(scope.row)">编辑</el-button> -->
 | 
			
		||||
                        <el-button type="text" @click="handleDelete(scope.row)">删除</el-button>
 | 
			
		||||
                    </template>
 | 
			
		||||
                </el-table-column>
 | 
			
		||||
            </el-table>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script setup>
 | 
			
		||||
import {list} from '@/api/order'
 | 
			
		||||
import { ref, reactive, onMounted } from 'vue'
 | 
			
		||||
const formRef = ref()
 | 
			
		||||
const paramsQuery = reactive({
 | 
			
		||||
    page: 1,
 | 
			
		||||
    pageSize: 10,
 | 
			
		||||
    orderId: '',
 | 
			
		||||
    startTime: '',
 | 
			
		||||
    endTime: ''
 | 
			
		||||
}), total = ref(0), queryTime = ref([])
 | 
			
		||||
const tableData = ref([])
 | 
			
		||||
onMounted(() => {
 | 
			
		||||
    getList()
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
async function getList() {
 | 
			
		||||
    const res = await list(paramsQuery)
 | 
			
		||||
    if(res.code === 0) {
 | 
			
		||||
        tableData.value = res.data.list
 | 
			
		||||
        total.value = res.data.total
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
function onSubmit() {
 | 
			
		||||
    console.log(queryTime.value)
 | 
			
		||||
    paramsQuery.startTime = queryTime.value[0]
 | 
			
		||||
    paramsQuery.endTime = queryTime.value[1]
 | 
			
		||||
    getList()
 | 
			
		||||
}
 | 
			
		||||
function reset(formEl) {
 | 
			
		||||
    if (!formEl) return
 | 
			
		||||
    formEl.resetFields()
 | 
			
		||||
    getList()
 | 
			
		||||
}
 | 
			
		||||
function handleDelete(row) {
 | 
			
		||||
    console.log(row)
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
<style lang="scss" scoped>
 | 
			
		||||
.demo-form-inline{
 | 
			
		||||
    background: white;
 | 
			
		||||
    padding: 1rem;
 | 
			
		||||
    padding-bottom: 0;
 | 
			
		||||
    margin-top: 0.5rem;
 | 
			
		||||
    
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
		Reference in New Issue
	
	Block a user