作者主页:Designer 小郑 作者简介:3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家,阿里云社区专家博主,蓝桥云课讲师。
基于JAVA+Vue+SpringBoot+MySQL的再生资源回收系统,包含了资源管理模块、出货地管理模块、回收单管理模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,再生资源回收系统基于角色的访问控制,给资源管理员、回收专员使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。
通过对再生资源回收系统的需求分析,我将再生资源回收系统分为四大菜单,分别是系统基础支持模块、再生资源模块、再生资源出货地模块、再生资源回收单模块。
系统基础支持模块包括了用户管理、组织架构管理、再生资源的图片管理、菜单角色权限管理、系统日志管理,这些是支持再生资源回收系统运行的基础模块。
再生资源模块是再生资源回收系统的其中一个模块。这个模块用于维护再生资源的类型,管理员可以在这个模块增加、删除、编辑、查询再生资源,也可以对单个再生资源发送通知提醒。
再生资源出货地模块,用于维护再生资源的出货地列表,出货地是再生资源的来源地。
再生资源回收单模块是再生资源回收系统的一部分。有了出货地模块和再生资源模块后,出货地就可以将再生资源回收了,再生资源回收单模块就是为了帮助出货地完成这件事情。
对于再生资源回收系统来说,再生资源的产量数据必须正确无误。也就是要确保再生资源回收系统的可靠性。只有当再生资源回收系统的数据受到再生资源运维人员的信任,这套再生资源回收系统才能解决再生资源的需求,从而投入使用。
为了降低再生资源回收系统的培训成本,再生资源回收系统的设计必须满足广大再生资源运维人员的要求。再生资源工作人员的计算机水平有高有低,不能根据专业、部门等因素一概而论。所以在设计再生资源回收系统时,必须要考虑到再生资源运维人员操作的每种情况,对每个细节可能出现的误操作,必须加以预防和弹框提示。
为了保证再生资源回收系统的可维护性,再生资源回收系统每天应该保证18小时的开机时间,在开机时间范围内应实时对再生资源运维人员提供服务,并每日对再生资源回收系统的冗余数据进行清理,便于后续进行再生资源数据分析。
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询再生资源")
public Result<IPage<Commodity>> getByPage(@ModelAttribute Commodity commodity, @ModelAttribute PageVo page){
QueryWrapper<Commodity> qw = new QueryWrapper<>();
if(StrUtil.isNotBlank(commodity.getName())) {
qw.eq("name",commodity.getName());
}
if(StrUtil.isNotBlank(commodity.getType())) {
qw.eq("type",commodity.getType());
}
if(StrUtil.isNotBlank(commodity.getStock())) {
qw.eq("stock",commodity.getStock());
}
if(StrUtil.isNotBlank(commodity.getSupplierId())) {
qw.eq("supplier_id",commodity.getSupplierId());
}
if(StrUtil.isNotBlank(commodity.getUnitPrice())) {
qw.eq("unit_price",commodity.getUnitPrice());
}
IPage<Commodity> data = iCommodityService.page(PageUtil.initMpPage(page),qw);
for (Commodity com : data.getRecords()) {
Supplier supplier = iSupplierService.getById(com.getSupplierId());
if(supplier != null) {
com.setSupplierName(supplier.getName());
}
}
return new ResultUtil<IPage<Commodity>>().setData(data);
}
@RequestMapping(value = "/insertOrUpdate", method = RequestMethod.POST)
@ApiOperation(value = "新增再生资源")
public Result<Commodity> saveOrUpdate(Commodity commodity){
if(iCommodityService.saveOrUpdate(commodity)){
return new ResultUtil<Commodity>().setData(commodity);
}
return new ResultUtil<Commodity>().setErrorMsg("操作失败");
}
@RequestMapping(value = "/addMessage", method = RequestMethod.GET)
@ApiOperation(value = "查询单条消息提醒")
public Result<MessageRemind> addMessage(@RequestParam String id){
Commodity commodity = iCommodityService.getById(id);
if(commodity == null) {
return ResultUtil.error("资源不存在");
}
User currUser = securityUtil.getCurrUser();
List<User> userList = iUserService.list();
for (User user : userList) {
MessageRemind mr = new MessageRemind();
mr.setTitle(commodity.getName() + "资源请留意");
mr.setRemind(currUser.getNickname());
mr.setReminded(user.getId());
mr.setRemindTime(DateUtil.now());
iMessageRemindService.saveOrUpdate(mr);
}
return ResultUtil.success();
}
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询资源供应商")
public Result<IPage<Supplier>> getByPage(@ModelAttribute Supplier supplier, @ModelAttribute PageVo page){
QueryWrapper<Supplier> qw = new QueryWrapper<>();
if(StrUtil.isNotBlank(supplier.getAddress())) {
qw.eq("address",supplier.getAddress());
}
if(StrUtil.isNotBlank(supplier.getMobile())) {
qw.eq("mobile",supplier.getMobile());
}
if(StrUtil.isNotBlank(supplier.getName())) {
qw.eq("name",supplier.getName());
}
if(StrUtil.isNotBlank(supplier.getType())) {
qw.eq("type",supplier.getType());
}
IPage<Supplier> data = iSupplierService.page(PageUtil.initMpPage(page),qw);
return new ResultUtil<IPage<Supplier>>().setData(data);
}
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询资源回收单")
public Result<IPage<Bill>> getByPage(@ModelAttribute Bill bill, @ModelAttribute PageVo page){
QueryWrapper<Bill> qw = new QueryWrapper<>();
if(!ZwzNullUtils.isNull(bill.getUserId())) {
qw.eq("user_id",bill.getUserId());
}
if(!ZwzNullUtils.isNull(bill.getCommodityId())) {
qw.eq("commodity_id",bill.getCommodityId());
}
if(!ZwzNullUtils.isNull(bill.getSupplierId())) {
qw.eq("supplier_id",bill.getSupplierId());
}
IPage<Bill> data = iBillService.page(PageUtil.initMpPage(page),qw);
for (Bill bill1 : data.getRecords()) {
Supplier supplier = iSupplierService.getById(bill1.getSupplierId());
if(supplier != null) {
bill1.setSupplierName(supplier.getName());
} else {
bill1.setSupplierName("无");
}
Commodity commodity = iCommodityService.getById(bill1.getCommodityId());
if(commodity != null) {
bill1.setCommodityName(commodity.getName());
} else {
bill1.setCommodityName("无");
}
User user = iUserService.getById(bill1.getUserId());
if(user != null) {
bill1.setUserName(user.getNickname());
} else {
bill1.setUserName("无");
}
}
return new ResultUtil<IPage<Bill>>().setData(data);
}
下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!