寺庙建制和对应捐款记录界面开发

This commit is contained in:
minimaxagent1 2025-08-01 15:06:45 +08:00
parent 6720f4358e
commit 8b31f835b1
3 changed files with 93 additions and 7 deletions

View File

@ -0,0 +1,54 @@
// 建制详情相关API
import { request } from '@/utils/request'
/**
* 获取建制详情
* @param {string} formedId - 建制ID
* @returns {Promise} 返回建制详情
*/
export function getInstitutionalDetail(formedId) {
return request({
url: '/app/formed/formedDetail',
method: 'GET',
params: {
formedId: formedId
}
})
}
/**
* 获取建制详情通过路径参数
* @param {string} id - 建制ID
* @returns {Promise} 返回建制详情
*/
export function getInstitutionalDetailById(id) {
return request({
url: `/app/formed/getFormed/${id}`,
method: 'GET'
})
}
/**
* 更新建制详情
* @param {Object} data - 建制详情数据
* @returns {Promise} 返回更新结果
*/
export function updateInstitutionalDetail(data) {
return request({
url: '/app/formed/updateFormed',
method: 'PUT',
data
})
}
/**
* 删除建制详情
* @param {string} id - 建制ID
* @returns {Promise} 返回删除结果
*/
export function deleteInstitutionalDetail(id) {
return request({
url: `/app/formed/deleteFormed/${id}`,
method: 'DELETE'
})
}

View File

@ -51,7 +51,7 @@
/* */
"mp-weixin" : {
"libVersion" : "latest",
"appid" : "wx58ed81cb59afda38",
"appid" : "wx38be729b2bb6de33",
"setting" : {
"urlCheck" : false,
"es6" : true,

View File

@ -19,8 +19,8 @@
<!-- 项目描述 -->
<view class="project-info">
<text class="project-title">始建"乾峰寺"(初建)</text>
<text class="project-desc">天王殿为"三门"内第一殿正中供奉弥勒菩萨弥勒菩萨背后供奉韦驮菩萨东西两侧为四大天王面阔五间采用歇山式重檐建筑装饰剪瓷具有浓厚的南方特色使殿堂显得极其庄严肃穆四大天王像于1981年重塑时采用国家级"非遗"漆线雕工艺装饰此殿于1925年重修2020年重建</text>
<text class="project-title">{{ projectInfo.proName || '加载中...' }}</text>
<text class="project-desc">{{ projectInfo.proProfile || '暂无描述' }}</text>
</view>
<!-- 捐款统计区域 -->
@ -74,6 +74,7 @@ import CommonEnum from "../../enum/common";
import StatusDisplay from "../../components/status-display/status-display.vue";
import SearchBox from "../../components/search-box/search-box.vue";
import { getDonorList } from '@/api/donor/donor.js';
import { getInstitutionalDetail } from '@/api/institutionalStructure/institutionalStructureDetail.js';
export default {
components: {
@ -89,6 +90,7 @@ export default {
searchKeyword: '',
donationList: [],
formedId: '', // ID
projectInfo: {}, //
//
pageNum: 1,
pageSize: 10,
@ -96,13 +98,13 @@ export default {
}
},
computed: {
//
//
totalAmount() {
return this.donationList.reduce((sum, item) => sum + item.amount, 0)
return this.projectInfo.totalAmount || this.donationList.reduce((sum, item) => sum + item.amount, 0)
},
//
//
participantCount() {
return this.donationList.length
return this.projectInfo.donorCount || this.donationList.length
}
},
onLoad(options) {
@ -111,6 +113,7 @@ export default {
this.formedId = options.formedId
}
//
this.loadProjectInfo()
this.loadDonationRecords()
},
methods: {
@ -124,6 +127,35 @@ export default {
//
uni.showToast({ title: '筛选功能开发中', icon: 'none' })
},
//
async loadProjectInfo() {
if (!this.formedId) {
console.error('缺少项目ID')
return
}
try {
const response = await getInstitutionalDetail(this.formedId)
if (response.code === 200) {
this.projectInfo = response.data
console.log('项目信息:', this.projectInfo)
} else {
console.error('获取项目信息失败:', response.msg)
uni.showToast({
title: response.msg || '获取项目信息失败',
icon: 'none'
})
}
} catch (error) {
console.error('获取项目信息失败:', error)
uni.showToast({
title: '网络错误',
icon: 'none'
})
}
},
// API
async loadDonationRecords(keyword = '') {
this.loading = true