ssm校园自助洗衣系统源码和论文091
开发工具:idea
数据库mysql5.7+
数据库链接工具:navcat,小海豚等
技术:ssm
本课题主要关注于校园自助洗衣系统的分析与设计,对学校学生及老师在洗衣方面提供服务。
在信息技术不断发展的背景下,学校宿舍洗衣机如何更大地发挥作用,满足大学生更高的洗衣需求成为本课题关注的重点。新技术的产生、信息化的普及这些都给学生和老师在校如何洗衣创新了方向。本课题旨在以优化学校自助洗衣服务流程的方式,来满足老师学生越来越高的洗衣需求,切实改善洗衣服务体验。同时,也以实际案例的方式,为其它同质化严重的产品尤其是公共产品提供了可创新方向。 在实际研究过程中,通过前期对国内外自助洗衣机的发展现状以及学校宿舍基础服务设施建设现状的背景分析,透析关于学校宿舍洗衣服务创新性的可研究价值。探讨服务产业化、物联网技术的兴起以及系统创新方法三个方面对于高校学生公寓洗衣服务的指导意义。以高校公寓自助洗衣服务空间环境、高校公寓洗衣机产品及服务、用户动态这三点为大方向,分别展开定性和定量研究。
对实地调研汇总的诸多洗衣问题,进行量化分析,得出洗衣服务中五个突出的问题点,即洗衣拥挤问题、洗衣服务卫生问题、洗衣中的等待问题、衣物取放问题以及洗衣机维护问题。
从用户需求角度出发,对校园自助洗衣系统,提高洗衣服务的信任度、提高洗衣服务的预见性、增强洗衣服务的引导性、多重功能空间与服务整合、规范洗衣服务的管理流程、健全洗衣服务的设备提供这六个大方向的设计策略,以提高整个洗衣流程的体验。
package com.controller;
import java.net.Inet4Address;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import com.entity.YiyuyuexiyijiEntity;
import com.entity.YonghuEntity;
import com.service.YiyuyuexiyijiService;
import com.service.YonghuService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
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.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.XiyijiEntity;
import com.service.XiyijiService;
import com.utils.PageUtils;
import com.utils.R;
/**
* 洗衣机
* 后端接口
* @author
* @email
* @date 2021-03-15
*/
@RestController
@Controller
@RequestMapping("/xiyiji")
public class XiyijiController {
private static final Logger logger = LoggerFactory.getLogger(XiyijiController.class);
@Autowired
private YonghuService yonghuService;
@Autowired
private XiyijiService xiyijiService;
@Autowired
private YiyuyuexiyijiService yiyuyuexiyijiService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params){
logger.debug("Controller:"+this.getClass().getName()+",page方法");
PageUtils page = xiyijiService.queryPage(params);
return R.ok().put("data", page);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
logger.debug("Controller:"+this.getClass().getName()+",info方法");
XiyijiEntity xiyiji = xiyijiService.selectById(id);
if(xiyiji!=null){
return R.ok().put("data", xiyiji);
}else {
return R.error(511,"查不到数据");
}
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody XiyijiEntity xiyiji, HttpServletRequest request){
logger.debug("Controller:"+this.getClass().getName()+",save");
Wrapper<XiyijiEntity> queryWrapper = new EntityWrapper<XiyijiEntity>()
.eq("name", xiyiji.getName())
.eq("money", xiyiji.getMoney())
.eq("xyjzt_types", xiyiji.getXyjztTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
XiyijiEntity xiyijiEntity = xiyijiService.selectOne(queryWrapper);
if("".equals(xiyiji.getImPhoto()) || "null".equals(xiyiji.getImPhoto())){
xiyiji.setImPhoto(null);
}
if(xiyijiEntity==null){
xiyiji.setXyjztTypes(1);
xiyijiService.insert(xiyiji);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody XiyijiEntity xiyiji, HttpServletRequest request){
logger.debug("Controller:"+this.getClass().getName()+",update");
//根据字段查询是否有相同数据
Wrapper<XiyijiEntity> queryWrapper = new EntityWrapper<XiyijiEntity>()
.notIn("id",xiyiji.getId())
.eq("name", xiyiji.getName())
.eq("money", xiyiji.getMoney())
.eq("xyjzt_types", xiyiji.getXyjztTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
XiyijiEntity xiyijiEntity = xiyijiService.selectOne(queryWrapper);
if("".equals(xiyiji.getImPhoto()) || "null".equals(xiyiji.getImPhoto())){
xiyiji.setImPhoto(null);
}
if(xiyijiEntity==null){
xiyijiService.updateById(xiyiji);//根据id更新
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
logger.debug("Controller:"+this.getClass().getName()+",delete");
xiyijiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/subscribe")
public R subscribe(Integer ids,Integer hour, HttpServletRequest request){
if(!request.getSession().getAttribute("role").equals("用户")){
return R.error("只有用户可以进行预约哦");
}
XiyijiEntity xiyiji = xiyijiService.selectById(ids);
if(xiyiji == null){
return R.error();
}
if(hour >= 10){
return R.error("使用时间不能大于10小时");
}
if(hour == null || hour < 1){
return R.error("使用时间不能为空或者小于1");
}
YiyuyuexiyijiEntity yiyuyuexiyiji = new YiyuyuexiyijiEntity();
yiyuyuexiyiji.setCreateTime(new Date());
yiyuyuexiyiji.setXyjTypes(xiyiji.getId());
YonghuEntity userId = yonghuService.selectById((Integer) request.getSession().getAttribute("userId"));
if(userId == null){
return R.error();
}
if(userId.getMoney() < hour*xiyiji.getMoney()){
return R.error("您余额不足,请充值");
}
userId.setMoney(userId.getMoney() - hour*xiyiji.getMoney());
yiyuyuexiyiji.setYhTypes((Integer) request.getSession().getAttribute("userId"));
yiyuyuexiyiji.setHour(hour);
yiyuyuexiyiji.setMoney(hour*xiyiji.getMoney());
Wrapper<YiyuyuexiyijiEntity> queryWrapper = new EntityWrapper<YiyuyuexiyijiEntity>()
.eq("xyj_types", yiyuyuexiyiji.getXyjTypes())
.eq("yh_types", yiyuyuexiyiji.getYhTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
YiyuyuexiyijiEntity yiyuyuexiyijiEntity = yiyuyuexiyijiService.selectOne(queryWrapper);
if(yiyuyuexiyijiEntity==null){
xiyiji.setXyjztTypes(2);
yonghuService.updateById(userId);
xiyijiService.updateById(xiyiji);
yiyuyuexiyijiService.insert(yiyuyuexiyiji);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
}
package com.controller;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import com.entity.XiyijiEntity;
import com.service.XiyijiService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
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.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.YiyuyuexiyijiEntity;
import com.service.YiyuyuexiyijiService;
import com.utils.PageUtils;
import com.utils.R;
/**
* 已预约洗衣机
* 后端接口
* @author
* @email
* @date 2021-03-15
*/
@RestController
@Controller
@RequestMapping("/yiyuyuexiyiji")
public class YiyuyuexiyijiController {
private static final Logger logger = LoggerFactory.getLogger(YiyuyuexiyijiController.class);
@Autowired
private XiyijiService xiyijiService;
@Autowired
private YiyuyuexiyijiService yiyuyuexiyijiService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){
logger.debug("Controller:"+this.getClass().getName()+",page方法");
PageUtils page = null;
if(request.getSession().getAttribute("role").equals("用户")){
params.put("yhTypes",request.getSession().getAttribute("userId"));
page = yiyuyuexiyijiService.queryPage(params);
}else{
page = yiyuyuexiyijiService.queryPage(params);
}
return R.ok().put("data", page);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
logger.debug("Controller:"+this.getClass().getName()+",info方法");
YiyuyuexiyijiEntity yiyuyuexiyiji = yiyuyuexiyijiService.selectById(id);
if(yiyuyuexiyiji!=null){
return R.ok().put("data", yiyuyuexiyiji);
}else {
return R.error(511,"查不到数据");
}
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody YiyuyuexiyijiEntity yiyuyuexiyiji, HttpServletRequest request){
logger.debug("Controller:"+this.getClass().getName()+",save");
Wrapper<YiyuyuexiyijiEntity> queryWrapper = new EntityWrapper<YiyuyuexiyijiEntity>()
.eq("xyj_types", yiyuyuexiyiji.getXyjTypes())
.eq("yh_types", yiyuyuexiyiji.getYhTypes())
.eq("hour", yiyuyuexiyiji.getHour())
.eq("money", yiyuyuexiyiji.getMoney())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
YiyuyuexiyijiEntity yiyuyuexiyijiEntity = yiyuyuexiyijiService.selectOne(queryWrapper);
if(yiyuyuexiyijiEntity==null){
yiyuyuexiyijiService.insert(yiyuyuexiyiji);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody YiyuyuexiyijiEntity yiyuyuexiyiji, HttpServletRequest request){
logger.debug("Controller:"+this.getClass().getName()+",update");
//根据字段查询是否有相同数据
Wrapper<YiyuyuexiyijiEntity> queryWrapper = new EntityWrapper<YiyuyuexiyijiEntity>()
.notIn("id",yiyuyuexiyiji.getId())
.eq("xyj_types", yiyuyuexiyiji.getXyjTypes())
.eq("yh_types", yiyuyuexiyiji.getYhTypes())
.eq("hour", yiyuyuexiyiji.getHour())
.eq("money", yiyuyuexiyiji.getMoney())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
YiyuyuexiyijiEntity yiyuyuexiyijiEntity = yiyuyuexiyijiService.selectOne(queryWrapper);
if(yiyuyuexiyijiEntity==null){
yiyuyuexiyijiService.updateById(yiyuyuexiyiji);//根据id更新
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Integer ids){
YiyuyuexiyijiEntity yiyuyuexiyiji = yiyuyuexiyijiService.selectById(ids);
XiyijiEntity xiyiji = xiyijiService.selectById(yiyuyuexiyiji.getXyjTypes());
if(xiyiji == null){
return R.error();
}
xiyiji.setXyjztTypes(1);
xiyijiService.updateById(xiyiji);
yiyuyuexiyijiService.deleteById(ids);
return R.ok();
}
}