基于SSM+Vue的個人健康信息網(wǎng)站Java健康評估管理系統(tǒng)(源碼調(diào)試+講解+文檔)

?????作者:計算機源碼社
????個人簡介:本人七年開發(fā)經(jīng)驗,擅長Java、微信小程序、Python、Android等,大家有這一塊的問題可以一起交流!
????**學習資料、程序開發(fā)、技術解答、代碼講解、文檔報告


1、緒論
?1.1 項目背景
? ? ? ?系統(tǒng)管理也都將通過計算機進行整體智能化操作,對于個人健康信息管理所牽扯的管理及數(shù)據(jù)保存都是非常多的,這給管理者的工作帶來了巨大的挑戰(zhàn),面對大量的信息,傳統(tǒng)的管理系統(tǒng),都是通過筆記的方式進行詳細信息的統(tǒng)計,后來出現(xiàn)電腦,通過電腦輸入軟件將紙質(zhì)的信息統(tǒng)計到電腦上,這種方式比較傳統(tǒng),而且想要統(tǒng)計數(shù)據(jù)信息比較麻煩,還受時間和空間的影響,所以為此開發(fā)了個人健康信息管理;為用戶提供了方便管理平臺,方便管理員查看及維護,并且可以通過需求進行內(nèi)容的編輯及維護等;對于用戶而言,可以隨時進行查看個人健康信息,管理員可以足不出戶就可以獲取到系統(tǒng)的數(shù)據(jù)信息等,而且還能節(jié)省用戶很多時間,所以開發(fā)個人健康信息管理給管理者帶來了很大的方便,同時也方便管理員對用戶信息進行處理。
?1.2 項目現(xiàn)狀
? ? ? 在當今高度發(fā)達的信息中,信息管理改革已成為一種更加廣泛和全面的趨勢。 “個人健康信息管理”是基于Mysql數(shù)據(jù)庫,在SSM程序設計的基礎上實現(xiàn)的。為確保中國經(jīng)濟的持續(xù)發(fā)展,信息時代日益更新,蓬勃發(fā)展。同時,隨著信息社會的快速發(fā)展,個人健康信息管理面臨著越來越多的信息,因此很難獲得他們對高效信息的需求,如何使用方便快捷的方式使查詢者在廣闊的海洋信息中查詢,存儲,管理和共享信息方面有效,對我們的工作和生活具有重要的現(xiàn)實意義。因此,國內(nèi)外學術界對此進行了深入而廣泛的研究,一個新的研究領域——個人健康信息管理誕生了。
?2、核心功能模塊
?2.1 系統(tǒng)角色分配
? ? ? ?基于SSM高校畢業(yè)設計選題系統(tǒng)采用Java語言,B/S的結(jié)構(gòu),同時也使用JavaWeb技術在動態(tài)頁面上進行了設計,后臺上采用Mysql數(shù)據(jù)庫,高校畢業(yè)設計選題系統(tǒng)的主要實現(xiàn)功能包括:
①管理員:首頁、個人中心、用戶管理、醫(yī)師管理、飲食記錄管理、運動記錄管理、健康信息管理、健康評估管理、健康知識管理、系統(tǒng)管理。
②醫(yī)師:首頁、個人中心、飲食記錄管理、運動記錄管理、健康信息管理、健康評估管理、系統(tǒng)管理,前臺首頁;首頁、健康知識、系統(tǒng)公告、個人中心、后臺管理、健康咨詢等。
③用戶:首頁、個人中心、飲食記錄管理、運動記錄管理、健康信息管理、健康評估管理等
?2.2 系統(tǒng)功能結(jié)構(gòu)圖

?2.3 文檔報告目錄

?3、項目展示
3.1 查看健康知識

?3.2 健康知識詳情

?3.3 查看健康資訊信息

?3.4 咨詢

3.5 用戶查看運動記錄

3.6 用戶添加飲食記錄

3.7 醫(yī)生健康評估

?3.8 管理員健康信息管理

?4、 核心代碼
/**
?*?健康信息
?* 后端接口
?*/
@RestController
@RequestMapping("/jiankangxinxi")
public class JiankangxinxiController {
? ? @Autowired
? ? private JiankangxinxiService jiankangxinxiService;
? ?
? ? /**
? ? ?* 后端健康信息列表
? ? ?*/
? ? @RequestMapping("/page")
? ? public R page(@RequestParam Map<String, Object> params,JiankangxinxiEntity jiankangxinxi, HttpServletRequest request){
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("yonghu")) {
jiankangxinxi.setZhanghao((String)request.getSession().getAttribute("username"));
}
? ? ? ? EntityWrapper<JiankangxinxiEntity> ew = new EntityWrapper<JiankangxinxiEntity>();
PageUtils page = jiankangxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiankangxinxi), params), params));
? ? ? ? return R.ok().put("data", page);
? ? }
? ??
? ? /**
? ? ?* 前端健康信息列表
? ? ?*/
? ? @RequestMapping("/list")
? ? public R list(@RequestParam Map<String, Object> params,JiankangxinxiEntity jiankangxinxi, HttpServletRequest request){
? ? ? ? EntityWrapper<JiankangxinxiEntity> ew = new EntityWrapper<JiankangxinxiEntity>();
PageUtils page = jiankangxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiankangxinxi), params), params));
? ? ? ? return R.ok().put("data", page);
? ? }
/**
? ? ?* 健康信息列表
? ? ?*/
? ? @RequestMapping("/lists")
? ? public R list( JiankangxinxiEntity jiankangxinxi){
? ? ? ? EntityWrapper<JiankangxinxiEntity> ew = new EntityWrapper<JiankangxinxiEntity>();
? ? ??ew.allEq(MPUtil.allEQMapPre( jiankangxinxi, "jiankangxinxi"));?
? ? ? ? return R.ok().put("data", jiankangxinxiService.selectListView(ew));
? ? }
/**
? ? ?* 查詢健康信息
? ? ?*/
? ? @RequestMapping("/query")
? ? public R query(JiankangxinxiEntity jiankangxinxi){
? ? ? ? EntityWrapper< JiankangxinxiEntity> ew = new EntityWrapper< JiankangxinxiEntity>();
? ew.allEq(MPUtil.allEQMapPre( jiankangxinxi, "jiankangxinxi"));?
JiankangxinxiView jiankangxinxiView =? jiankangxinxiService.selectView(ew);
return R.ok("查詢健康信息成功").put("data", jiankangxinxiView);
? ? }
? ? /**
? ? ?* 后端健康信息詳情
? ? ?*/
? ? @RequestMapping("/info/{id}")
? ? public R info(@PathVariable("id") Long id){
? ? ? ? JiankangxinxiEntity jiankangxinxi = jiankangxinxiService.selectById(id);
? ? ? ? return R.ok().put("data", jiankangxinxi);
? ? }
? ? /**
? ? ?* 前端健康信息詳情
? ? ?*/
? ? @RequestMapping("/detail/{id}")
? ? public R detail(@PathVariable("id") Long id){
? ? ? ? JiankangxinxiEntity jiankangxinxi = jiankangxinxiService.selectById(id);
? ? ? ? return R.ok().put("data", jiankangxinxi);
? ? }?
? ? /**
? ? ?* 后端保存健康信息
? ? ?*/
? ? @RequestMapping("/save")
? ? public R save(@RequestBody JiankangxinxiEntity jiankangxinxi, HttpServletRequest request){
? ??jiankangxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
? ??//ValidatorUtils.validateEntity(jiankangxinxi);
? ? ? ? jiankangxinxiService.insert(jiankangxinxi);
? ? ? ? return R.ok();
? ? }
? ??
? ? /**
? ? ?* 前端保存健康信息
? ? ?*/
? ? @RequestMapping("/add")
? ? public R add(@RequestBody JiankangxinxiEntity jiankangxinxi, HttpServletRequest request){
? ??jiankangxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
? ??//ValidatorUtils.validateEntity(jiankangxinxi);
? ? ? ? jiankangxinxiService.insert(jiankangxinxi);
? ? ? ? return R.ok();
? ? }
? ? /**
? ? ?* 修改健康信息
? ? ?*/
? ? @RequestMapping("/update")
? ? public R update(@RequestBody JiankangxinxiEntity jiankangxinxi, HttpServletRequest request){
? ? ? ? //ValidatorUtils.validateEntity(jiankangxinxi);
? ? ? ? jiankangxinxiService.updateById(jiankangxinxi);//全部更新
? ? ? ? return R.ok();
? ? }
? ??
? ? /**
? ? ?* 刪除健康信息
? ? ?*/
? ? @RequestMapping("/delete")
? ? public R delete(@RequestBody Long[] ids){
? ? ? ? jiankangxinxiService.deleteBatchIds(Arrays.asList(ids));
? ? ? ? return R.ok();
? ? }
? ??
? ? /**
? ? ?* 提醒接口
? ? ?*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,?
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
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));
}
}
Wrapper<JiankangxinxiEntity> wrapper = new EntityWrapper<JiankangxinxiEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("yonghu")) {
wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));
}
int count = jiankangxinxiService.selectCount(wrapper);
return R.ok().put("count", count);
}