/*
这是一个关于Java开源项目的代码功能解释,其中涉及的主要功能包括获取数据库表中某列的列表、根据表中的某列值获取整条记录、修改表的状态、获取需要提醒的记录数、单列求和、分组统计、按值统计以及人脸比对等。以下是每个功能的详细解释:
1. `getOption`: 获取数据库中某个表的某个列的所有值(联动接口)。接收表名(`tableName`)和列名(`columnName`)作为参数,返回该列的所有数据。
2. `getFollowByOption`: 根据表中的一个列的某个值获取对应的整条记录。接收表名(`tableName`)、列名(`columnName`)和列的值(`columnValue`)作为参数,返回与给定列值匹配的整条记录。
3. `sh`: 修改表中某个记录的状态(通常是启用或禁用状态)。接收表名(`tableName`)和一个包含修改内容的Map作为参数。
4. `remindCount`: 获取需要提醒的记录数,可能是基于某个时间或数字类型的列。接收表名(`tableName`)、列名(`columnName`)、类型(`type`)和其他参数(如提醒的起始和结束日期)作为参数,返回需要提醒的记录数。
5. `cal`: 对表中的某一列进行求和操作。接收表名(`tableName`)和列名(`columnName`)作为参数,返回该列的和。
6. `group`: 对表中的数据进行分组统计。接收表名(`tableName`)和列名(`columnName`)作为参数,返回分组统计的结果。
7. `value`: 对表中的数据进行按值统计,通常是两个列的组合统计。接收表名(`tableName`)、x轴列名(`xColumnName`)和y轴列名(`yColumnName`)作为参数,返回按值统计的结果,结果会进行日期格式化处理。
8. `valueDay`: 与上一个接口类似,但增加了时间统计类型的参数,用于更细致的时间维度分析。根据表名、两个列名以及时间统计类型等参数计算统计结果并返回。
9. `matchFace`: 人脸比对功能。接收两个人脸图像作为输入,通过Baidu AI的人脸识别API进行比对,返回比对结果。
以上是对该Java开源项目中每个功能的详细解释。希望对你有所帮助!
*/
package com.controller;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ResourceUtils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.annotation.IgnoreAuth;
import com.baidu.aip.face.AipFace;
import com.baidu.aip.face.MatchRequest;
import com.baidu.aip.util.Base64Util;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.service.CommonService;
import com.service.ConfigService;
import com.utils.BaiduUtil;
import com.utils.FileUtil;
import com.utils.R;
/**
* 通用接口
*/
@RestController
public class CommonController{
@Autowired
private CommonService commonService;
private static AipFace client = null;
@Autowired
private ConfigService configService;
/**
* 获取table表中的column列表(联动接口)
* @param table
* @param column
* @return
*/
@IgnoreAuth
@RequestMapping("/option/{tableName}/{columnName}")
public R getOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,String level,String parent) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
if(StringUtils.isNotBlank(level)) {
params.put("level", level);
}
if(StringUtils.isNotBlank(parent)) {
params.put("parent", parent);
}
List<String> data = commonService.getOption(params);
return R.ok().put("data", data);
}
/**
* 根据table中的column获取单条记录
* @param table
* @param column
* @return
*/
@IgnoreAuth
@RequestMapping("/follow/{tableName}/{columnName}")
public R getFollowByOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName, @RequestParam String columnValue) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
params.put("columnValue", columnValue);
Map<String, Object> result = commonService.getFollowByOption(params);
return R.ok().put("data", result);
}
/**
* 修改table表的sfsh状态
* @param table
* @param map
* @return
*/
@RequestMapping("/sh/{tableName}")
public R sh(@PathVariable("tableName") String tableName, @RequestBody Map<String, Object> map) {
map.put("table", tableName);
commonService.sh(map);
return R.ok();
}
/**
* 获取需要提醒的记录数
* @param tableName
* @param columnName
* @param type 1:数字 2:日期
* @param map
* @return
*/
@IgnoreAuth
@RequestMapping("/remind/{tableName}/{columnName}/{type}")
public R remindCount(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("table", tableName);
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
int count = commonService.remindCount(map);
return R.ok().put("count", count);
}
/**
* 单列求和
*/
@IgnoreAuth
@RequestMapping("/cal/{tableName}/{columnName}")
public R cal(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
Map<String, Object> result = commonService.selectCal(params);
return R.ok().put("data", result);
}
/**
* 分组统计
*/
@IgnoreAuth
@RequestMapping("/group/{tableName}/{columnName}")
public R group(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
List<Map<String, Object>> result = commonService.selectGroup(params);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* (按值统计)
*/
@IgnoreAuth
@RequestMapping("/value/{tableName}/{xColumnName}/{yColumnName}")
public R value(@PathVariable("tableName") String tableName,
没有合适的资源?快使用搜索试试~ 我知道了~
(源码)基于Spring Boot框架的医院信息管理系统.zip

共822个文件
js:164个
svg:162个
java:131个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 189 浏览量
2025-06-10
02:30:06
上传
评论
收藏 16.94MB ZIP 举报
温馨提示
# 基于Spring Boot框架的医院信息管理系统 ## 项目简介 本系统是一个基于Spring Boot框架开发的医院信息管理系统,涉及医院管理的各个方面,能有效协助医院进行内部管理与服务,涵盖患者信息管理、医生管理、药品管理、预约挂号等功能。 ## 项目的主要特性和功能 1. 患者信息管理可进行患者基本信息录入、查询、修改和删除。 2. 医生管理实现医生信息录入、查询、排班、预约等操作。 3. 药品管理支持药品信息录入、库存查询、药品采购功能。 4. 预约挂号患者可通过系统选择医生和就诊时间进行预约挂号。 5. 报告与统计生成各类报告和统计数据,辅助管理者决策分析。 6. 系统管理包含用户管理、权限设置、数据备份与恢复等功能。 ## 安装使用步骤 假设已下载本项目的源码文件,按以下步骤操作 1. 环境准备安装Java开发环境(JDK 1.8),并配置相应的环境变量。
资源推荐
资源详情
资源评论




























收起资源包目录





































































































共 822 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论


Java咖啡师
- 粉丝: 1701
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 电子商务之开网店论文.doc
- 议大数据应用技术在旅游规划行业的应用.doc
- 基于混沌理论和神经网络的销售量预测.docx
- 互联网金融平台发展目标及规划.doc
- 大数据思维在银行信贷管理的应用.docx
- 基于网络文本分析的旅游目的地形象感知研究.docx
- 区块链赋能实体经济融合路径研究.docx
- 互联网+线上线下教学模式初探.docx
- 人工智能与机器人.ppt
- 电子商务与安全实验.doc
- 9算法设计与分析课程期末试卷.doc
- 欢聚集团 (Joyy Inc.) VNN 框架:高性能轻量神经网络部署,赋能多 App 多场景 AI 能力
- C语言课程设计—学生成绩管理系统.docx
- 农业经济管理信息化建设的途径分析.docx
- 计算机网络通信安全中的数据加密技术.docx
- 数字化智能家居系统之别墅应用解决方案-智建社区.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
