佛教祭拜小程序-寺庙小程序-纪念馆小程序

news2024/10/5 14:57:26

大家好,我是程序员小孟。

现在有很多的产品或者工具都开始信息话了,寺庙或者佛教也需要小程序吗?

当然了!

前面我们还开发了很多寺庙相关的小程序,都有相关的介绍:

1,优质的寺庙小程序-H5寺庙网页

今天要介绍的是另一款寺庙系统,该系统可以作为小程序、H5网页、安卓端。

这个寺庙小程序的功能非常多。

一,系统的用途

系统的用途该系统用于线上的祭奠、纪念亲人、名人、朋友,同时可以在线放生,同时管理员可以对小程序端所有的信息进行管理。

该小程序适用各大寺庙。

二,系统的功能需求

用户:登录、注册、纪念台查看、在线祭拜、在线放生、名人馆查看、在线祭拜名人、新建纪念馆,查看亲友馆、查看家族纪念馆、祈福台查看、在线寄语、对寄语进行在线点赞、评论、AI和亲人对话、在线商城、在线赠与商衣服,可以赠与师傅衣服,纪念台可以查看简介、生平事迹、相册、回音、寄语、我的信息查看。

管理员:用户管理、纪念台管理、祭拜管理、放生管理、放生的动物管理、在线名人信息管理、纪念馆管理、家族纪念信息管理、祈福台信息管理、寄语管理、寄语的评论管理、AI管理、商城商品管理、赠与订单管理、生平事迹管理、相册管理、寄语管理、数据统计。

三,系统的技术栈

因为客户没有技术方面的要求,那就按照我习惯用的技术开发的,无所谓什么最新不最新技术了。

小程序:uniapp

后台框架:SpringBoot,

数据库采用的Mysql,

后端的页面采用的Vue进行开发,

缓存用的Redis,

搜索引擎采用的是elasticsearch,

ORM层框架:MyBatis,

连接池:Druid,

分库分表:MyCat,

权限:SpringSecurity,

代码质量检查:sonar。

在这里插入图片描述

看下系统的功能框架图应该更加清楚:
在这里插入图片描述

四,系统演示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五,系统核心代码

package com.example.controller;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.example.common.Result;
import com.example.entity.ChaobaInfo;
import com.example.service.ChaobaInfoService;
import com.example.vo.ChaobaInfoVo;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

@RestController
@RequestMapping(value = "/chaobaInfo")
public class ChaobaInfoController {
    @Resource
    private ChaobaInfoService chaobaInfoService;

    @PostMapping
    public Result<ChaobaInfo> add(@RequestBody ChaobaInfo chaobaInfo) {
        chaobaInfoService.add(chaobaInfo);
        return Result.success(chaobaInfo);
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        chaobaInfoService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody ChaobaInfo chaobaInfo) {
        chaobaInfoService.update(chaobaInfo);
        return Result.success();
    }
    @PutMapping("/zhifu")
    public Result zhifu(@RequestBody ChaobaInfo chaobaInfo) {
        chaobaInfoService.zhifu(chaobaInfo);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<ChaobaInfo> detail(@PathVariable Long id) {
        ChaobaInfo chaobaInfo = chaobaInfoService.findById(id);
        return Result.success(chaobaInfo);
    }
    @GetMapping("/getByUserId/{id}")
    public Result<List<ChaobaInfo>> getByUserId(@PathVariable Long id) {
        return Result.success(  chaobaInfoService.getByUserId(id));
    }

    @GetMapping
    public Result<List<ChaobaInfo>> all() {
        return Result.success(chaobaInfoService.findAll());
    }

    @PostMapping("/page")
    public Result<PageInfo<ChaobaInfo>> page(@RequestParam(defaultValue = "1") Integer pageNum,
                                           @RequestParam(defaultValue = "10") Integer pageSize,
                                             @RequestBody ChaobaInfoVo chaobaInfo,
                                             HttpServletRequest request
                                             ) {
        return Result.success(chaobaInfoService.findPage(pageNum, pageSize,chaobaInfo));
    }
    @PostMapping("/getExcel")
    public void getExcel(HttpServletResponse response,
                         @RequestParam(defaultValue = "1") Integer pageNum,
                         @RequestParam(defaultValue = "10") Integer pageSize,
                         @RequestBody ChaobaInfoVo chaobaInfo) throws IOException {
        // 1. 生成excel
        Map<String, Object> row = new LinkedHashMap<>();
        row.put("address","地址");
        row.put("yangshangren","阳上人");
        row.put("xingshi","姓氏");
        row.put("wangren","亡人");
        row.put("telephone","电话");
        row.put("wangxijinsheng","往昔今生");
        row.put("jine","金额");
        row.put("username","操作用户");
        List<Map<String, Object>> list = CollUtil.newArrayList(row);
        PageHelper.startPage(pageNum,pageSize);
        List<Map<String, Object>> daochuexcellist = chaobaInfoService.daochuexcel(chaobaInfo);
        List<Map<String, Object>> resultList = PageInfo.of(daochuexcellist).getList();
        for (Map<String, Object> map : resultList) {
            list.add(map);
        }
        // 2. 写excel
        ExcelWriter writer = ExcelUtil.getWriter(true);
        writer.write(list, true);
        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
        response.setHeader("Content-Disposition","attachment;filename=chaoba.xlsx");
        ServletOutputStream out = response.getOutputStream();
        writer.flush(out, true);
        writer.close();
        IoUtil.close(System.out);
    }
}

package com.example.controller;

import com.example.common.Result;
import com.example.entity.AdvertiserInfo;
import com.example.service.AdvertiserInfoService;
import com.example.vo.ChaobaInfoVo;
import com.github.pagehelper.PageInfo;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;

@RestController
@RequestMapping(value = "/advertiserInfo")
public class AdvertiserInfoController {
    @Resource
    private AdvertiserInfoService advertiserInfoService;

    @PostMapping
    public Result<AdvertiserInfo> add(@RequestBody AdvertiserInfo advertiserInfo) {
        advertiserInfoService.add(advertiserInfo);
        return Result.success(advertiserInfo);
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        advertiserInfoService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody AdvertiserInfo advertiserInfo) {
        advertiserInfoService.update(advertiserInfo);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<AdvertiserInfo> detail(@PathVariable Long id) {
        AdvertiserInfo advertiserInfo = advertiserInfoService.findById(id);
        return Result.success(advertiserInfo);
    }

    @GetMapping
    public Result<List<AdvertiserInfo>> all() {
        return Result.success(advertiserInfoService.findAll());
    }
    @GetMapping("/getNew")
    public Result<List<AdvertiserInfo>> getNew() {
        return Result.success(advertiserInfoService.getNew());
    }

    @PostMapping("/page")
    public Result<PageInfo<AdvertiserInfo>> page(  @RequestBody AdvertiserInfo advertiserInfo,
                                                 @RequestParam(defaultValue = "1") Integer pageNum,
                                                 @RequestParam(defaultValue = "10") Integer pageSize,
                                                 HttpServletRequest request) {
        return Result.success(advertiserInfoService.findPage(advertiserInfo.getName(), pageNum, pageSize, request));
    }
    @PostMapping("/front/page")
    public Result<PageInfo<AdvertiserInfo>> page(
                                                   @RequestParam(defaultValue = "1") Integer pageNum,
                                                   @RequestParam(defaultValue = "4") Integer pageSize,
                                                   HttpServletRequest request) {
        return Result.success(advertiserInfoService.findFrontPage(pageNum, pageSize, request));
    }
}

我是程序员小孟,专注软件开发,系统分享,有问题的小伙伴,欢迎交流。

感谢三联,点赞、关注!

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1788709.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

jmeter常用的断言

包括&#xff08;Contains&#xff09;&#xff1a;响应内容包括需要匹配的内容即代表响应成功&#xff0c;支持正则表达式 匹配&#xff08;Matches&#xff09;&#xff1a;响应内容要完全匹配需要匹配的内容即代表响应成功&#xff0c;大小写不敏感&#xff0c;支持正则表达…

2. redis配置文件解析

redis配置文件解析 一、redis配置文件1、监听地址2、监听端口3、redis接收请求的队列长度3.1 修改系统参数/内核参数 4、客户端空闲的超时时间5、指定redis的pid文件6、定义错误日志7、定义数据库的数量8、定义持久化存储9、设置redis密码10、redis并发连接11、最大内存策略 二…

python的一种集成开发工具:PyCharm开发工具

一. 简介 本文简单了解两种 python语言所使用的 集成开发环境&#xff1a; PyCharm、vscode。 python语言学习中&#xff0c;可以任意选中这两个集成开发环境的一种就可以。本文先来简单学习 PyCharm开发工具安装与使用。 二. python的一种集成开发工具&#xff1a;PyChar…

Warning:成交前,永远相信意外即将发生

作为一名首次次创业者&#xff0c;随着创业进入深层次阶段&#xff0c;越来越感觉到&#xff1a;创业是一条不归路&#xff0c;因为路上不止有惊喜&#xff0c;还有风尘。创业之前我认为世界是“天圆地方”的&#xff0c; 创业后你猜我怎么看这个世界的&#xff1f; 创业前我一…

ARM32开发——串口库封装(初级)

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 开发流程分组创建 接口定义完整代码 开发流程 在文件系统中&#xff0c;创建库目录Library在keil工程中&#xff0c;创建分组管理…

健身日记之倒立俯卧撑学习——起始日2024.6.4

文章目录 前言 自我介绍 昔日计划 新目标计划 瓶颈突破尝试 参考视频及文章 前言 有轻微健身基础&#xff0c;正式接触街健五大神技&#xff0c;立志在两年内解锁全部&#xff0c;将有机会的进行日常训练和目标肌群锻炼&#xff0c;这里向大家展示我的计划和安排&#xf…

【C++练级之路】【Lv.24】异常

快乐的流畅&#xff1a;个人主页 个人专栏&#xff1a;《算法神殿》《数据结构世界》《进击的C》 远方有一堆篝火&#xff0c;在为久候之人燃烧&#xff01; 文章目录 引言一、异常的概念及定义1.1 异常的概念1.2 异常的定义 二、异常的使用2.1 异常的栈展开匹配2.2 异常的重新…

Django使用正则表达式

本书1-7章样章及配套资源下载链接: https://pan.baidu.com/s/1OGmhHxEMf2ZdozkUnDkAkA?pwdnanc 源码、PPT课件、教学视频等&#xff0c;可以从前言给出的下载信息下载&#xff0c;大家可以评估一下。 在Django框架的新版本&#xff08;v2.0 &#xff09;中&#xff0c;URLc…

电脑开机之后要很久才能进入系统?进入WinPE也是卡顿半天?

前言 小白最近接到了一张很奇怪的电脑维修单&#xff0c;客户说他的工作室电脑开机特别慢&#xff0c;开机之后特别卡顿&#xff0c;在使用的时候也会一卡一卡的。 这事情开始看很简单&#xff1a;估计就是电脑还是机械硬盘&#xff0c;所以开机很慢又卡顿。所以应该是把机械…

一键开启:盲盒小程序里的梦幻奇遇

在繁忙的都市生活中&#xff0c;每个人心中都藏着一个关于奇遇的梦想。如今&#xff0c;我们为您精心打造了一款盲盒小程序——“梦幻奇遇”&#xff0c;只需一键开启&#xff0c;就能带您走进一个充满无限惊喜和梦幻色彩的奇幻世界。 一、神秘盲盒&#xff0c;惊喜连连 “梦幻…

SolidWorks价格与其它CAD软件相比:为什么选择SolidWorks更划算

在CAD软件的浩瀚星海中&#xff0c;SolidWorks如同一颗璀璨的明星&#xff0c;以其卓越的性能、广泛的适用性和合理的定价策略&#xff0c;赢得了全球众多工程师和设计师的青睐。亿达四方&#xff0c;作为官方授权的SolidWorks代理商&#xff0c;今天将带您深入价格与功能的比较…

21、matlab生成脉冲序列:pulstran()函数

1、pulstran()函数 1&#xff09;语法 语法1&#xff1a;y pulstran(t,d,func,fs) 基于连续函数的采样产生脉冲序列。 语法2&#xff1a;y pulstran(t,d,p) 生成一个脉冲序列&#xff0c;该脉冲序列是向量p中原型脉冲的多个延迟插值的总和。 语法3&#xff1a;y pulstran…

Django缓存

由于Django是动态网站&#xff0c;所有每次请求均会去数据进行相应的操作&#xff0c;当程序访问量大时&#xff0c;耗时必然会更加明显&#xff0c;最简单解决方式是使用&#xff1a;缓存&#xff0c;缓存将一个某个views的返回值保存至内存或者memcache中&#xff0c;若某个时…

本地知识库开源框架Fastgpt、MaxKB产品体验

本地知识库开源框架Fastgpt、MaxKB产品体验 背景fastgpt简介知识库共享部署 MaxKB总结 背景 上一篇体验了Quivr、QAnything两个开源知识库模型框架&#xff0c;这次介绍两款小众但是体验比较好的产品。 fastgpt 简介 FastGPT 是一个基于 LLM 大语言模型的知识库问答系统&am…

RFID解决方案提高汽车行业的可追溯性

汽车产业是一个典型的密集型资金产业&#xff0c;为了降低成本&#xff0c;许多汽车制造商和零部件供应商选择在海外设厂&#xff0c;上中下游企业分布在世界各地。因此&#xff0c;在汽车行业内&#xff0c;可追溯性是非常重要的&#xff0c;它在整个供应链中实时识别原材料、…

CogVLM2多模态开源大模型部署与使用

CogVLM2多模态开源大模型部署与使用 项目简介 CogVLM2 是由清华大学团队发布的新一代开源模型系列。2024年5月24日&#xff0c;发布了Int4版本模型&#xff0c;只需16GB显存即可进行推理。2024年5月20日&#xff0c;发布了基于llama3-8b的CogVLM2&#xff0c;性能与GPT-4V相当…

怎么用微信小程序实现远程控制空调

怎么用微信小程序实现远程控制空调呢&#xff1f; 本文描述了使用微信小程序调用HTTP接口&#xff0c;实现控制空调&#xff0c;通过不同规格的通断器&#xff0c;来控制不同功率的空调的电源。 可选用产品&#xff1a;可根据实际场景需求&#xff0c;选择对应的规格 序号设备…

这个杂志,审稿到录用仅需一个月!毕业生的梦中情刊,本科生用NHANES数据库发文2区...

Lipids in Health and Disease 是一个公开的、同行评议的期刊&#xff0c;主要发表关于脂质所有方面的文章&#xff0c;影响因子逐年上升&#xff0c;国人发文占比排第一&#xff0c;年刊量100多篇&#xff01;最重要的是&#xff0c;该期刊文章审稿速度特别快&#xff0c;最快…

《额尔古纳河右岸》有感

看完了迟子建老师的《额尔古纳河右岸》&#xff0c;老规矩&#xff0c;写点东西吧。最近一段时间确实挺迷茫的&#xff0c;所以给自己找了点事儿&#xff0c;看看书。期初并不能认真看进去&#xff0c;慢慢的看见去之后&#xff0c;就愈发想知道故事的后来。 书里有太多关于死亡…

地址线/时钟/数据线串联电阻作用

在一些线路中会串联电阻&#xff0c;那么这个电阻的作用到底是什么&#xff1f;什么时候需要串联电阻&#xff1f; 首先高速信号线中才考虑使用这样的电阻。在低频情况下&#xff0c;一般是直接连接。这个电阻有两个作用&#xff1a; 1.第一是阻抗匹配。因为信号源的阻抗很低…