随着时代的发展,互联网和计算机技术,带动了整个社会的发展,方便了我们的生活。智慧农贸信息化管理平台是“信息公示、产品溯源、价格检测”互联网:的农贸市场综合信息化管理平台,使农贸市场在管理、服务和监管方面能更好更快的实现信息网络化、工作规范化、管理现代化。以提高农贸市场管理水平、增加经营收入;融合互联网:的理念为经营户增加营销渠道,提高营业收入,打造舒适的经营场所;为消费者提供诚信消费环境,舒心购物场所;为政府部门提高食品安全监管,提供食品溯源通道。
智慧农贸信息化管理平台是使用JAVA的SSM技术,MySQL作为数据库开发,商户通过查看农产品,在线提交农药检测情况,并完成市场资质的登记,实现智慧农贸信息化管理。首先对本论文进行分析后,提出平台的相关技术,然后整理系统的需求分析,根据需求进行功能和数据库设计,最后进行系统实现和测试 。
环境需要
1.运行环境:最好是java jdk 1.8,这是目前最稳定的JDK也是被使用最多的JDK版本。
2.IDE环境:IDEA,Eclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat7/Tomcat8/Tomcat9版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:是;
技术栈
后端:Spring+SpringMVC+Mybatis+Springboot
前端:vue+CSS+JavaScript+jQuery+elementui
1)用户管理:管理员数据维护和个人商户用户的数据维护;
2)市场资质管理:市场id、市场建立的行政单位、监管单位、行政许可、卫生许可等资格的审查结果的增删改查;
3)商户管理:对所属市场id、商户商户账号、用户姓名、身份证号、用户门牌号、联系电话、商户销售农产品种类,摊位商铺服务态度综合情况进行管理,支持导入身份证图片、商户许可证图片,支持按照规则排序;
4)农产品管理:对市场所有农产品种类、价格单价、农残检测情况进行管理;
5)终端管理:对市场上的设备如电子秤、客流检测仪、食品安全检测仪等,所属商户id、设备厂家、设备型号、设备状况等进行管理;
6)公告管理:对市场通知公告进行管理;
7)在Web端展示统计数据;
填写设备检测的信息后把信息插入到数据库中,返回到设备检测管理列表,在列表中通过关键词搜索可以查询某一个设备检测。在列表中存在编辑和删除链接,点击删除,通过对应的ID值构造删除语句,删除成功后,更新列表信息。
具体实现流程如下:
在设备检测信息回复中,填写设备检测回复信息,点击提交。调用设备检测回复信息管理的controller方法,先进行逻辑信息判断,内容是否符合规范等。通过条件后,执行设备检测回复信息的数据库插入操作。
设备检测列表页面,界面通过forEach标签循环List集合,然后展示集合内的属性显示到界面上。其中controller方法调用设备检测的数据库操作类进行设备检测,把结果通过List集合进行返回,并返回设备检测列表界面。
在设备检测信息删除中,点击确定删除。调用设备检测信息管理的controller方法,执行设备检测信息的数据库删除操作。最终返回到设备检测列表界面。
/**
* 登录相关
*/
@RequestMapping("users")
@RestController
public class UserController{
@Autowired
private UserService userService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 退出
*/
@GetMapping(value = "logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null) {
return R.error("账号不存在");
}
user.setPassword("123456");
userService.update(user,null);
return R.ok("密码已重置为:123456");
}
/**
* 列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/list")
public R list( UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
ew.allEq(MPUtil.allEQMapPre( user, "user"));
return R.ok().put("data", userService.selectListView(ew));
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 获取用户的session用户信息
*/
@RequestMapping("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 保存
*/
@PostMapping("/save")
public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
userService.updateById(user);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}
目录
1 绪论 1
1.1课题背景 1
1.2课题研究现状 1
1.3初步设计方法与实施方案 2
1.4本文研究内容 2
2 系统开发环境 4
2.1 使用工具简介 4
2.2 环境配置 4
2.3 B/S结构简介 4
2.4 MySQL数据库 5
2.5 框架介绍 5
3 系统分析 6
3.1系统可行性分析 6
3.1.1经济可行性 6
3.1.2技术可行性 6
3.1.3运行可行性 6
3.2系统现状分析 6
3.3功能需求分析 7
3.4系统设计规则与运行环境 8
3.5系统流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3删除信息流程 10
4 系统设计 11
4.1系统设计主要功能 11
4.2数据库设计 11
4.2.1数据库设计规范 11
4.2.2 E/R图 11
4.2.3数据表 12
5 系统实现 25
5.1系统功能模块 25
5.2后台模块 27
5.2.1管理员功能模块 27
5.2.2用户功能模块 30
6 系统测试 33
6.1功能测试 33
6.2可用性测试 33
6.3性能测试 34
6.4测试结果分析 34
7结 论 35
参考文献 36
致 谢 37