用户登录
用户注册
员工管理
管理员管理
个人信息管理
管理员管理
个人信息
垃圾回收
修改回收垃圾
添加回收垃圾
公告查看
申请转运
个人信息修改
公告管理
审批
查看
技术描述
开发工具: Idea/Eclipse
数据库: mysql
Jar包仓库: Maven
前段框架:LayUI
后端框架: Spring+SpringMVC+Mybatis+SpringBoot
资料说明
基于SSM+SpringBoot+Layui的垃圾回收系统,包含管理员,超级管理员,普通用户三个角色。整体功能包含用户登录注册,不同垃圾分类入库,垃圾申请运转,系统公告管理,用户管理,管理员管理,管理员审批垃圾转入,垃圾站管理,系统员工管理,个人信息管理,垃圾去向管理,垃圾回收等。
package com.garbage.demo.controller;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.garbage.demo.common.Result;
import com.garbage.demo.entity.Garbage;
import com.garbage.demo.entity.Transport;
import com.garbage.demo.service.IGarbageService;
import com.garbage.demo.service.ITransportService;
import com.garbage.demo.vo.request.RequestTransportAddVo;
import com.garbage.demo.vo.request.RequestTransportListVo;
import com.garbage.demo.vo.response.ResponseTransportListVo;
//import jdk.nashorn.internal.objects.annotations.Getter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.imageio.ImageIO;
/**
* <p>
* 运输表 前端控制器
* </p>
*
*/
@RestController
@RequestMapping("/transport")
public class TransportController {
@Autowired
ITransportService transportService;
@Autowired
IGarbageService garbageService;
@PostMapping("/add")
public Result add(@RequestBody RequestTransportAddVo transportAddVo){
if(transportService.add(transportAddVo)){
return Result.getSuccess().setMsg("提交成功!!!");
}
return Result.getFailure().setMsg("提交失败!!!");
}
@PostMapping("/list")
public Result list(@RequestBody RequestTransportListVo transportListVo){
IPage<ResponseTransportListVo> page = transportService.list(transportListVo);
return Result.getSuccess().setData(page);
}
@GetMapping("/packaging/{id}")
@Transactional
public Result packaging(@PathVariable Integer id){
UpdateWrapper<Garbage> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("transport_id",id);
updateWrapper.set("status",1);
garbageService.update(updateWrapper);
UpdateWrapper<Transport> transportUpdateWrapper = new UpdateWrapper<>();
transportUpdateWrapper.eq("id",id);
transportUpdateWrapper.set("status",3);
transportService.update(transportUpdateWrapper);
return Result.getSuccess().setMsg("已运输");
}
@GetMapping("/passOrRefuse/{b}/{id}")
public Result passOrRefuse(@PathVariable Boolean b, @PathVariable Integer id){
UpdateWrapper<Transport> transportUpdateWrapper = new UpdateWrapper<>();
transportUpdateWrapper.eq("id",id);
if(b){
transportUpdateWrapper.set("status",1);
}else{
transportUpdateWrapper.set("status",2);
}
transportService.update(transportUpdateWrapper);
return Result.getSuccess().setMsg("操作成功");
}
}
package com.garbage.demo.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.garbage.demo.entity.Garbage;
import com.garbage.demo.entity.Transport;
import com.garbage.demo.mapper.TransportMapper;
import com.garbage.demo.service.IGarbageService;
import com.garbage.demo.service.ITransportService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.garbage.demo.vo.request.RequestTransportAddVo;
import com.garbage.demo.vo.request.RequestTransportListVo;
import com.garbage.demo.vo.response.ResponseTransportListVo;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.security.Key;
import java.util.HashMap;
import java.util.Map;
/**
* <p>
* 运输表 服务实现类
* </p>
*/
@Service
public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport> implements ITransportService {
@Autowired
IGarbageService garbageService;
@Autowired
ITransportService transportService;
@Override
@Transactional
public boolean add(RequestTransportAddVo transportAddVo) {
Transport transport = new Transport();
BeanUtils.copyProperties(transportAddVo,transport);
transportService.save(transport);
//更新垃圾列表的运输id
UpdateWrapper<Garbage> wrapper = new UpdateWrapper<>();
wrapper.in("id",transportAddVo.getGarbageIds());
wrapper.set("transport_id",transport.getId());
return garbageService.update(wrapper);
}
@Override
public IPage<ResponseTransportListVo> list(RequestTransportListVo transportListVo) {
IPage<Transport> page = new Page<>(transportListVo.getDisplayStart(),
transportListVo.getDisplayLength());
QueryWrapper<Transport> wrapper = new QueryWrapper<>();
if(ObjectUtils.isNotEmpty(transportListVo.getType())){
wrapper.eq("type",transportListVo.getType());
}
if(ObjectUtils.isNotEmpty(transportListVo.getOutTime())){
wrapper.eq("out_time",transportListVo.getOutTime());
}
if(ObjectUtils.isNotEmpty(transportListVo.getStatus())){
wrapper.eq("status",transportListVo.getStatus());
}
return transportService.page(page,wrapper).convert(transport->{
ResponseTransportListVo listVo = new ResponseTransportListVo();
BeanUtils.copyProperties(transport,listVo);
listVo.setWeight(garbageService.getWeightByTransportId(transport.getId()));
return listVo;
});
}
@Autowired
TransportMapper transportMapper;
@Override
public void UpdateStatus() {
transportMapper.updateStatus();
}
}