提交 ca190da0 作者: guolinhua

feat(api): 对接首页和农场数据接口

上级 bc9ae4d8
......@@ -4,7 +4,7 @@ import { CodeGenerator, Property } from 'pont-engine'
// 接口 API 前缀
// 通常与项目的 env 配置中的 VITE_GLOB_API_URL_PREFIX 相同
const API_URL_PREFIX = '/api'
const API_URL_PREFIX = '/jeecgboot'
export default class BasicGenerator extends CodeGenerator {
checkJsonParam(inter: Interface, paramsCode: string): boolean {
......@@ -60,8 +60,8 @@ export default class BasicGenerator extends CodeGenerator {
sourceResponseType === 'File'
? 'void'
: sourceResponseType === 'defs.ResultString'
? 'string'
: sourceResponseType.replace(/defs.Result(.*)/, 'defs.$1')
? 'string'
: sourceResponseType.replace(/defs.Result(.*)/, 'defs.$1')
return `
export ${paramsCode}
......@@ -127,8 +127,8 @@ export default class BasicGenerator extends CodeGenerator {
requestParams.includes('form')
? `headers: { 'Content-Type': 'multipart/form-data;charset=UTF-8' },`
: isBody
? `headers: { 'Content-Type': 'application/json' },`
: ''
? `headers: { 'Content-Type': 'application/json' },`
: ''
}
...config,
......
......@@ -2,6 +2,9 @@ import { otherHttp } from '/@/utils/http/axios'
enum Api {
zoneList = '/online/cgform/api/getData/01fd687ecb164aea914e92047e144d66', // 金刚区菜单数据
productMarketList = '/online/cgform/api/getData/5b71e11020d44366b2d130e200c7a640', // 热门产地行情
serviceStatsList = '/online/cgform/api/getData/491863dde351404da63a1a6e8c699c4c', // 服务展示窗
agricultureClassList = '/online/cgform/api/getData/311c300e05694ba69a063d04c8572e9e', // 农技课堂
}
/**
......@@ -14,3 +17,36 @@ export function zoneList(params = {}) {
params,
})
}
/**
* @param params 请求参数
* @description: 热门产地行情数据
*/
export function productMarketList(params = {}) {
return otherHttp.get({
url: Api.productMarketList,
params,
})
}
/**
* @param params 请求参数
* @description: 服务展示窗数据
*/
export function serviceStatsList(params = {}) {
return otherHttp.get({
url: Api.serviceStatsList,
params,
})
}
/**
* @param params 请求参数
* @description: 农技课堂数据
*/
export function agricultureClassList(params = {}) {
return otherHttp.get({
url: Api.agricultureClassList,
params,
})
}
import { otherHttp } from '/@/utils/http/axios'
enum Api {
zoneList = '/online/cgform/api/getData/01fd687ecb164aea914e92047e144d66', // 功能菜单数据
agricultureModelsList = '/online/cgform/api/getData/7b2983df6ddf416aba68db8b0ab234ab', // 农业模型数据
baseManagementList = '/online/cgform/api/getData/3a7fbb877f304b7d83935caa454859c4', // 基地管理数据
commonToolsList = '/online/cgform/api/getData/e4e4e6c901254b60b1e7a005097999ec', // 常用工具数据
}
/**
* @param params 请求参数
* @description: 金刚区菜单数据
*/
export function zoneList(params = {}) {
return otherHttp.get({
url: Api.zoneList,
params,
})
}
/**
* @param params 请求参数
* @description: 农业模型数据
*/
export function agricultureModelsList(params = {}) {
return otherHttp.get({
url: Api.agricultureModelsList,
params,
})
}
/**
* @param params 请求参数
* @description: 基地管理数据
*/
export function baseManagementList(params = {}) {
return otherHttp.get({
url: Api.baseManagementList,
params,
})
}
/**
* @param params 请求参数
* @description: 常用工具数据
*/
export function commonToolsList(params = {}) {
return otherHttp.get({
url: Api.commonToolsList,
params,
})
}
<script setup lang="ts">
import { reactive } from 'vue'
import { onPullDownRefresh } from '@dcloudio/uni-app'
import { onPullDownRefresh, onShow } from '@dcloudio/uni-app'
import * as NongChangAPI from '@/api/model/nongchang'
onShow(() => {
// 获取金刚区菜单数据
getZoomList()
// 获取农业模型数据
getAgricultureModelsList()
// 获取基地管理数据
getBaseManagementList()
// 获取常用工具数据
getCommonToolsList()
})
// 下拉刷新
onPullDownRefresh(() => {
......@@ -20,11 +33,11 @@
// 功能菜单
menuItems: [
{ id: 1, name: '监测预警', icon: '/static/images/codefun/e683f9d10dc21da45abffbfa4c56fffb.png' },
{ id: 2, name: '农业模型', icon: '/static/images/codefun/afdf5cf91bb1832ec12b89ba1f8a4a22.png' },
{ id: 3, name: '基地管理', icon: '/static/images/codefun/8ce0f7de048a5d10fd901fa4caee40fd.png' },
{ id: 4, name: '信用中心', icon: '/static/images/codefun/bc6853d7f464c445f1d6cc5f3b37103d.png' },
{ id: 5, name: '灵活用工', icon: '/static/images/codefun/104cbc5dca418b07e6933d2e953db1d8.png' },
// { id: 1, name: '监测预警', icon: '/static/images/codefun/e683f9d10dc21da45abffbfa4c56fffb.png' },
// { id: 2, name: '农业模型', icon: '/static/images/codefun/afdf5cf91bb1832ec12b89ba1f8a4a22.png' },
// { id: 3, name: '基地管理', icon: '/static/images/codefun/8ce0f7de048a5d10fd901fa4caee40fd.png' },
// { id: 4, name: '信用中心', icon: '/static/images/codefun/bc6853d7f464c445f1d6cc5f3b37103d.png' },
// { id: 5, name: '灵活用工', icon: '/static/images/codefun/104cbc5dca418b07e6933d2e953db1d8.png' },
],
// 农场信息
......@@ -195,6 +208,40 @@
},
})
function getZoomList() {
NongChangAPI.zoneList({
pageNo: 1,
pageSize: 5,
status: 1,
type: 2,
}).then((res) => {
const { records } = res
pageData.menuItems = []
pageData.menuItems = records
})
}
function getAgricultureModelsList() {
NongChangAPI.agricultureModelsList().then((res) => {
const { records } = res
pageData.agricultureModels = []
pageData.agricultureModels = records
})
}
function getBaseManagementList() {
NongChangAPI.baseManagementList().then((res) => {
const { records } = res
pageData.baseManagement = []
pageData.baseManagement = records
})
}
function getCommonToolsList() {
NongChangAPI.commonToolsList().then((res) => {
const { records } = res
pageData.commonTools = []
pageData.commonTools = records
})
}
// 菜单点击事件
function onMenuItemClick(item: any) {
console.log('点击菜单项:', item)
......@@ -266,15 +313,9 @@
v-for="item in pageData.menuItems"
:key="item.id"
class="codefun-flex-col codefun-items-center"
:class="{
'equal-division-item': item.id === 1,
'group_3 equal-division-item': item.id === 2 || item.id === 3,
'group_4 equal-division-item_2': item.id === 4,
'equal-division-item_3 group_5': item.id === 5,
}"
@click="onMenuItemClick(item)"
>
<image class="image_6" :src="item.icon" />
<image class="image_6" :src="item.icon_url" />
<text class="font_3 mt-13" :class="`text_${item.id + 2}`">{{ item.name }}</text>
</view>
</view>
......@@ -742,7 +783,10 @@
}
}
.section_3 {
padding: 16rpx 12rpx 16rpx;
display: flex;
justify-content: space-between;
align-items: center;
padding: 16rpx 24rpx 16rpx;
background-color: #ffffff;
border-radius: 16rpx;
mix-blend-mode: NOTTHROUGH;
......@@ -878,6 +922,7 @@
margin-top: 16rpx;
text-align: center;
width: 160rpx;
height: 60rpx;
}
.text-wrapper_3 {
margin-top: 36rpx;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论