基于springboot+vue的鲜花商城管理系统

💖🔥作者主页计算机毕设IT宝
精彩专栏推荐订阅:在 下方专栏👇🏻👇🏻👇🏻👇🏻

Java实战项目

一、项目介绍

**摘要:
本论文旨在设计和实现一个功能完善的鲜花商城系统,以满足用户对鲜花购买的需求。随着电子商务的快速发展,鲜花作为重要的礼品和装饰品,其在线销售市场也日益扩大。本项目旨在提供一个用户友好的平台,使用户能够方便地浏览、选择和购买各种鲜花及相关产品,同时为商家提供一个高效管理订单和产品的系统。

  1. 引言:
    鲜花作为表达情感、庆祝节日以及装饰环境的重要元素,在现代社会中具有广泛的应用。随着互联网的普及,电子商务为鲜花销售提供了全新的渠道,但同时也带来了竞争激烈的市场环境。因此,设计一个高效、方便、安全的鲜花商城系统对于满足用户需求、提升用户体验和促进鲜花产业的发展具有重要意义。
  2. 目标与意义:
    本项目的主要目标是设计和实现一个综合性的鲜花商城系统,具有以下特点:
    用户友好的界面:提供直观、易用的界面,使用户能够方便地浏览、搜索、筛选和比较不同鲜花及相关产品。
    订单管理:为用户提供订单跟踪和历史记录,同时为商家提供订单处理和管理功能。
    后台管理:为商家提供管理商品、库存、价格和促销活动的管理界面,提高管理效率。
  3. 系统设计与实现:
    系统将分为前台用户界面和后台管理界面,主要模块包括:
    用户注册与登录:用户可以注册账号并登录,实现个人信息管理。
    鲜花浏览与搜索:用户可以浏览不同分类的鲜花,通过关键字搜索特定产品。
    购物车与下单:用户可以将心仪的产品加入购物车,并完成订单支付。
    订单管理:用户可以查看订单状态、历史订单和发票信息。
    商品管理:商家可以在后台管理界面中添加、编辑和删除商品信息。
    订单处理:商家可以处理订单、更新发货状态并与用户沟通。
    数据统计分析:系统可以生成销售报表、用户偏好分析等报告,为商家决策提供参考。**

二、开发环境

  • 开发语言:Java
  • 数据库:MySQL
  • 系统架构:B/S
  • 后端:springboot
  • 前端:Vue
  • 工具:IDEA或者Eclipse、JDK1.8、Maven

三、项目展示

首页模块:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

管理员模块:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、代码展示

package cn.controller;


import cn.entity.*;
import cn.service.*;
import cn.util.Const;
import cn.util.ServerResponse;
import com.mysql.cj.util.StringUtils;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.List;

@Controller
@RequestMapping("/orders")
public class OrdersController {
	@Autowired
	OrdersService ordersService;
	@Autowired
	OrdersdetailService ordersdetailService;
	@Autowired
	GoodsService goodsService;
	@Autowired
	CartsService cartsService;
	@Autowired
	UsersService usersService;
	@Autowired
	AddressService addressService;

	// 后台list
	@RequestMapping("list")
	@ResponseBody
	public ServerResponse<Orders> list(Integer page, Integer limit,
									   HttpSession session, String orderno) {
		QueryWrapper<Orders> wrapper = new QueryWrapper<Orders>();
		if (!StringUtils.isNullOrEmpty(orderno)) {
			wrapper.like("orderno", orderno);
		}

		wrapper.eq("isdel", 0);
		wrapper.orderByDesc("id");
		IPage<Orders> pageList = new Page<Orders>(page, limit);
		pageList = ordersService.page(pageList, wrapper);
		List<Orders> list = pageList.getRecords();
		// 关联对象
		for (Orders m : list) {
			Users u = usersService.getById(m.getUid());
			m.setUsers(u);
			QueryWrapper<Ordersdetail> dwrapper = new QueryWrapper<Ordersdetail>();
			dwrapper.eq("oid", m.getId());
			List<Ordersdetail> dlist = ordersdetailService.list(dwrapper);
			m.setAddress(addressService.getById(m.getAid()));
			for (Ordersdetail d : dlist) {
				d.setGoods(goodsService.getById(d.getGid()));
			}
			m.setDetails(dlist);
		}
		// 会自动查出总条数
		int count = (int) pageList.getTotal();
		return new ServerResponse<Orders>("0", "", count, pageList.getRecords());
	}

	@RequestMapping("index")
	public String index(HttpSession session, Model model) {
		QueryWrapper<Orders> wrapper = new QueryWrapper<Orders>();
		Integer role = (Integer) session.getAttribute("role");
		Users users = (Users) session.getAttribute("users");
		if (role != null && role == 1) {
			wrapper.eq("uid", users.getId());// 自己订单
		}
		wrapper.eq("isdel", 0);
		wrapper.orderByDesc("status");
		wrapper.orderByDesc("id");
		List<Orders> list = ordersService.list(wrapper);
		for (Orders o : list) {
			o.setUsers(usersService.getById(o.getUid()));
			QueryWrapper<Ordersdetail> dwrapper = new QueryWrapper<Ordersdetail>();
			dwrapper.eq("oid", o.getId());
			List<Ordersdetail> dlist = ordersdetailService.list(dwrapper);
			o.setAddress(addressService.getById(o.getAid()));
			for (Ordersdetail d : dlist) {
				d.setGoods(goodsService.getById(d.getGid()));
			}
			o.setDetails(dlist);
		}
		model.addAttribute("list", list);
		return "ordersList";
	}

	@RequestMapping("add")
	@ResponseBody
	public ServerResponse<Orders> add(HttpSession session,@RequestParam("addressId") Integer id) {
		System.out.println(id+"我是id");
		Users users = (Users) session.getAttribute("users");
		// 查询所有购物车商品
		QueryWrapper<Carts> wrapper = new QueryWrapper<Carts>();
		wrapper.eq("isdel", 0);
		wrapper.eq("uid", users.getId());
		List<Carts> cartList = cartsService.list(wrapper);

		Orders orders = new Orders();
		orders.setUid(users.getId());
		orders.setIsdel(0);
		orders.setOptime(Const.getFullTime());
		orders.setStatus("未发货");
		orders.setOrderno(Const.getIds());
		orders.setAid(id);
		ordersService.save(orders);
		int oid = orders.getId();
		double price = 0;
		for (int i = 0; i < cartList.size(); i++) {
			Carts c = cartList.get(i);
			Ordersdetail detail = new Ordersdetail();
			detail.setOid(oid);
			detail.setGid(c.getGid());
			detail.setUid(c.getUid());
			detail.setPrice(c.getPrice());
			detail.setBak1("未发货");
			detail.setQuantity(c.getQuantity());
			price = price + c.getPrice() * c.getQuantity();
			ordersdetailService.save(detail);// 添加明细
			cartsService.removeById(c);// 删除购物车
		}
		// 更新订单的总价格
		orders.setPrice(price);
		boolean flag = ordersService.updateById(orders);

		if (flag) {
			return new ServerResponse<Orders>("0", "删除成功!");
		} else {
			return new ServerResponse<Orders>("1", "删除失败!");
		}
	}

	@RequestMapping("detail")
	public String detail(Integer id, HttpServletRequest request) {
		Orders orders = ordersService.getById(id);
		request.setAttribute("orders", orders);
		return "redirect:/ordersdetail/index?oid=" + id;
	}

	@RequestMapping("findById")
	@ResponseBody
	public Address findById(@RequestParam("id") Integer id) {
		Address address = addressService.getById(id);
		return address;
	}

	@RequestMapping("update")
	@ResponseBody
	public ServerResponse<Orders> update(Orders orders) {
		boolean flag = true;
		// 确认减少库存
		QueryWrapper<Ordersdetail> wrapper = new QueryWrapper<Ordersdetail>();
		wrapper.eq("oid", orders.getId());
		List<Ordersdetail> detailList = ordersdetailService.list(wrapper);
		for (Ordersdetail od : detailList) {
			// 修改详情为发货
			od.setBak1("已发货");
			ordersdetailService.updateById(od);
		}
		orders.setStatus("已发货");
		flag = ordersService.updateById(orders);
		if (flag) {
			return new ServerResponse<Orders>("0", "操作成功!");
		} else {
			return new ServerResponse<Orders>("1", "操作失败!");
		}
	}

	@RequestMapping("delete")
	@ResponseBody
	public ServerResponse<Orders> delete(Orders orders) {
		orders.setIsdel(1);
		boolean flag = ordersService.updateById(orders);
		if (flag) {
			return new ServerResponse<Orders>("0", "删除成功!");
		} else {
			return new ServerResponse<Orders>("1", "删除失败!");
		}
	}
}

五、论文参考

在这里插入图片描述

六、项目总结

本文项目旨在设计与实现一个功能完善的鲜花商城系统,以满足现代社会中鲜花销售的需求。通过本项目的设计与实现,成功地构建了一个用户友好的平台,用户可以方便地浏览、选择和购买各种鲜花及相关产品,同时为商家提供了高效管理订单和产品的系统。在项目的设计与实现过程中,结合了前端和后端技术,实现了用户界面和业务逻辑的有机结合,为用户和商家创造了良好的体验。

本项目的实现为鲜花电子商务领域提供了一个可行的解决方案,并为其他类似电子商务系统的开发提供了有益的经验。然而,鲜花商城系统的发展仍需要进一步的改进和创新,例如推出个性化推荐系统、优化移动端用户体验等,以不断适应市场的变化和用户的需求。

通过本论文项目的研究与实践,不仅提升了本领域的技术水平,也为电子商务系统设计与开发提供了一个实际案例。随着社会的发展和技术的进步,本项目的成果有望在实际应用中发挥积极的作用,为用户和商家带来更多便利和价值。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值