基于springboot會(huì)員制醫(yī)療預(yù)約服務(wù)管理信息系統(tǒng)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)源碼和LW文檔
摘要
會(huì)員制醫(yī)療預(yù)約服務(wù)管理信息系統(tǒng)是針對(duì)會(huì)員制醫(yī)療預(yù)約服務(wù)管理方面必不可少的一個(gè)部分。在會(huì)員制醫(yī)療預(yù)約服務(wù)管理的整個(gè)過(guò)程中,會(huì)員制醫(yī)療預(yù)約服務(wù)管理系統(tǒng)擔(dān)負(fù)著最重要的角色。為滿足如今日益復(fù)雜的管理需求,各類的管理系統(tǒng)也在不斷改進(jìn)。本課題所設(shè)計(jì)的是會(huì)員制醫(yī)療預(yù)約服務(wù)管理信息系統(tǒng),使用java進(jìn)行開(kāi)發(fā),它的優(yōu)點(diǎn)代碼不能從瀏覽器查看,保密性非常好,比其他的系統(tǒng)更具安全性。java還容易修改和調(diào)試,畢竟社會(huì)是在不斷發(fā)展過(guò)程中難免有更多需求,這點(diǎn)很重要。而且,本系統(tǒng)除了有對(duì)會(huì)員制醫(yī)療預(yù)約服務(wù)的管理,還添加了對(duì)用戶的資料管理,這也是為了滿足系統(tǒng)更深層次的需求。除了上述優(yōu)勢(shì)外,本系統(tǒng)還具有:查詢迅速,搜索資料方便,可靠性強(qiáng)等等。
關(guān)鍵詞:會(huì)員制醫(yī)療預(yù)約服務(wù)管理;java;可靠性
?
Absract
Membership medical reservation service management information system is an essential part of membership medical reservation service management.In the whole process of membership medical appointment service management, the membership medical appointment service management system plays the most important role.To meet today's increasingly complex management needs, various management systems are also constantly improving.This project is designed as a membership medical appointment service management information system, developed using java, its advantage code can not be viewed from the browser, confidentiality is very good, more secure than other systems.The java is also easy to modify and debug, after all, it is inevitable that the society has more needs in the process of continuous development, which is very important.In addition, in addition to the management of the membership medical appointment service, the system has also added the data management of users, which is also to meet the deeper needs of the system.In addition to the above advantages, the system also has: quick query, convenient search data, strong reliability and so on.
Key words: membership system medical appointment service management; java; reliability
?
目錄
目錄 III
1緒論 4
1.1開(kāi)發(fā)背景 4
1.2課題研究的目的和意義 5
1.3課題設(shè)計(jì)目標(biāo) 5
2開(kāi)發(fā)技術(shù)介紹 6
2.1 Java語(yǔ)言簡(jiǎn)介 6
2.2 MySql數(shù)據(jù)庫(kù) 7
2.3 MySQL環(huán)境配置 7
2.4 B/S結(jié)構(gòu) 7
2.5SpringBoot框架 8
3系統(tǒng)分析 9
3.1需求分析 9
3.2系統(tǒng)可行性分析 9
3.3 系統(tǒng)現(xiàn)狀分析 9
3.4 性能需求分析 10
3.5系統(tǒng)流程分析 11
3.5.1操作流程 11
3.5.2添加信息流程 12
3.5.3刪除信息流程 13
4系統(tǒng)總體設(shè)計(jì) 14
4.1系統(tǒng)結(jié)構(gòu) 14
4.2數(shù)據(jù)庫(kù)設(shè)計(jì) 15
4.2.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 15
4.2.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 16
5 系統(tǒng)詳細(xì)設(shè)計(jì) 32
5.1系統(tǒng)功能模塊 32
5.2管理員功能模塊 34
5.3 醫(yī)生功能模塊 40
5.3 會(huì)員功能模塊 42
6 系統(tǒng)測(cè)試 44
6.1 測(cè)試目的 44
6.2 測(cè)試的步驟 44
6.3測(cè)試結(jié)論 44
7 系統(tǒng)維護(hù) 45
結(jié)論 46
參考文獻(xiàn) 47
致謝 48
關(guān)鍵代碼:
/**
?* 通用接口
?*/
@RestController
public class CommonController{
@Autowired
private CommonService commonService;
? ? private static AipFace client = null;
? ??
? ? @Autowired
? ? private ConfigService configService;? ??
/**
* 獲取table表中的column列表(聯(lián)動(dòng)接口)
* @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);
}
/**
* 根據(jù)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狀態(tài)
* @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();
}
/**
* 獲取需要提醒的記錄數(shù)
* @param tableName
* @param columnName
* @param type 1:數(shù)字 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);
}
/**
* 分組統(tǒng)計(jì)
*/
@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);
}


