宜興專業(yè)做網(wǎng)站公司搜索競(jìng)價(jià)
作者主頁(yè):舒克日記
簡(jiǎn)介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者、Java項(xiàng)目、學(xué)習(xí)資料、技術(shù)互助
文中獲取源碼
項(xiàng)目介紹
本大學(xué)生入學(xué)審核系統(tǒng)管理員和學(xué)生。
管理員功能有個(gè)人中心,學(xué)生管理,學(xué)籍信息管理,入學(xué)辦理管理等。
學(xué)生功能有個(gè)人中心,學(xué)籍信息管理,入學(xué)辦理管理等。
環(huán)境要求
1.運(yùn)行環(huán)境:最好是java jdk1.8,我們?cè)谶@個(gè)平臺(tái)上運(yùn)行的。其他版本理論上也可以。
2.IDE環(huán)境:IDEA,Eclipse,Myeclipse都可以。推薦IDEA;
3.tomcat環(huán)境:Tomcat7.x,8.X,9.x版本均可
4.硬件環(huán)境:windows7/8/10 4G內(nèi)存以上;或者M(jìn)ac OS;
5.是否Maven項(xiàng)目:是;查看源碼目錄中是否包含pom.xml;若包含,則為maven項(xiàng)目,否則為非maven.項(xiàng)目
6.數(shù)據(jù)庫(kù):MySql5.7/8.0等版本均可;
技術(shù)棧
運(yùn)行環(huán)境:jdk8 + tomcat9 + mysql5.7 + windows10
服務(wù)端技術(shù):Spring Boot+ Mybatis +VUE
使用說(shuō)明
1.使用Navicati或者其它工具,在mysql中創(chuàng)建對(duì)應(yīng)sq文件名稱的數(shù)據(jù)庫(kù),并導(dǎo)入項(xiàng)目的sql文件;
2.使用IDEA/Eclipse/MyEclipse導(dǎo)入項(xiàng)目,修改配置,運(yùn)行項(xiàng)目;
3.將項(xiàng)目中config-propertiesi配置文件中的數(shù)據(jù)庫(kù)配置改為自己的配置,然后運(yùn)行;
運(yùn)行指導(dǎo)
idea導(dǎo)入源碼空間站頂目教程說(shuō)明(Vindows版)-ssm篇:
http://mtw.so/5MHvZq
源碼地址:http://codegym.top
運(yùn)行截圖
文檔截圖
項(xiàng)目文檔
代碼
package com.controller;import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.SusheEntity;
import com.entity.SusheYonghuEntity;
import com.entity.view.SusheView;
import com.service.DictionaryService;
import com.service.SusheService;
import com.service.SusheYonghuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;import javax.servlet.http.HttpServletRequest;
import java.util.*;/*** 宿舍信息* 后端接口* @author* @email* @date
*/
@RestController
@Controller
@RequestMapping("/sushe")
public class SusheController {private static final Logger logger = LoggerFactory.getLogger(SusheController.class);@Autowiredprivate SusheService susheService;@Autowiredprivate TokenService tokenService;@Autowiredprivate DictionaryService dictionaryService;@Autowiredprivate SusheYonghuService susheYonghuService;//級(jí)聯(lián)表service/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));params.put("orderBy","id");String role = String.valueOf(request.getSession().getAttribute("role"));PageUtils page = susheService.queryPage(params);if(StringUtil.isNotEmpty(role) && "用戶".equals(role)){ // 如果是用戶的話,就刪除 不是當(dāng)前學(xué)生宿舍 的宿舍EntityWrapper<SusheYonghuEntity> wrapper = new EntityWrapper<>();wrapper.eq("yonghu_id",request.getSession().getAttribute("userId"));SusheYonghuEntity susheYonghuEntity = susheYonghuService.selectOne(wrapper);if(susheYonghuEntity!= null){Integer susheId = susheYonghuEntity.getSusheId();List<SusheView> list1 = (List<SusheView>)page.getList();Iterator<SusheView> it = list1.iterator();while(it.hasNext()){SusheView susheView = it.next();if(susheView.getId() != susheId){it.remove();}}}else{page.setList(new ArrayList<SusheView>());}}//字典表數(shù)據(jù)轉(zhuǎn)換List<SusheView> list =(List<SusheView>)page.getList();for(SusheView c:list){//修改對(duì)應(yīng)字典表字段dictionaryService.dictionaryConvert(c);}return R.ok().put("data", page);}/*** 后端詳情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);SusheEntity sushe = susheService.selectById(id);if(sushe !=null){//entity轉(zhuǎn)viewSusheView view = new SusheView();BeanUtils.copyProperties( sushe , view );//把實(shí)體數(shù)據(jù)重構(gòu)到view中//修改對(duì)應(yīng)字典表字段dictionaryService.dictionaryConvert(view);return R.ok().put("data", view);}else {return R.error(511,"查不到該宿舍");}}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody SusheEntity sushe, HttpServletRequest request){logger.debug("save方法:,,Controller:{},,sushe:{}",this.getClass().getName(),sushe.toString());String building = sushe.getBuilding();String unit = sushe.getUnit();String room = sushe.getRoom();Wrapper<SusheEntity> queryWrapper = new EntityWrapper<SusheEntity>().eq("building", building).eq("unit", unit).eq("room",room);logger.info("sql語(yǔ)句:"+queryWrapper.getSqlSegment());SusheEntity susheEntity = susheService.selectOne(queryWrapper);if(susheEntity==null){sushe.setCreateTime(new Date());sushe.setSusheNumber(0);susheService.insert(sushe);return R.ok();}else {return R.error(511,"表中已有樓棟:"+building+",單元:"+unit+",房間號(hào):"+room+"的房間");}}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody SusheEntity sushe, HttpServletRequest request){logger.debug("update方法:,,Controller:{},,sushe:{}",this.getClass().getName(),sushe.toString());String building = sushe.getBuilding();String unit = sushe.getUnit();String room = sushe.getRoom();Wrapper<SusheEntity> queryWrapper = new EntityWrapper<SusheEntity>().notIn("id",sushe.getId()).eq("building", building).eq("unit", unit).eq("room", room);logger.info("sql語(yǔ)句:"+queryWrapper.getSqlSegment());SusheEntity susheEntity = susheService.selectOne(queryWrapper);if(susheEntity==null){susheService.updateById(sushe);//根據(jù)id更新return R.ok();}else {return R.error(511,"表中已有樓棟:"+building+",單元:"+unit+",房間號(hào):"+room+"的房間");}}/*** 刪除*/@RequestMapping("/delete")public R delete(@RequestBody Integer[] ids){logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());if(ids != null && ids.length>0){susheService.deleteBatchIds(Arrays.asList(ids));susheYonghuService.delete(new EntityWrapper<SusheYonghuEntity>().in("sushe_id", Arrays.asList(ids)));}return R.ok();}}