ssm maven在线拍卖系统源码

【232】ssm maven在线拍卖系统源码


 开发工具:idea 或eclipse
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:ssm 

package school.controller;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import school.domain.Product;
import school.domain.Record;
import school.domain.User;
import school.mapper.*;
import school.service.UserService;
import school.support.BaseController;
import school.support.pojo.CommentPo;
import school.support.pojo.OfferPo;
import school.support.util.ParamUtils;
import tk.mybatis.mapper.entity.Example;

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

@Controller
public class IndexController extends BaseController {

    @Autowired
    private UserService userService;
    @Autowired
    private UserMapper userMapper;
    @Autowired
    private ProductMapper productMapper;
    @Autowired
    private OfferMapper offerMapper;
    @Autowired
    private CommentMapper commentMapper;
    @Autowired
    private RecordMapper recordMapper;

    @RequestMapping({"/", "index"})
    public String index(Model model, @RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "") String name) {
        session.removeAttribute("errorMsg");
        Example example = new Example(Product.class);
        Example.Criteria criteria = example.createCriteria();
        criteria.andLike("name", "%" + name + "%");
        PageHelper.startPage(pageNum, pageSize);
        PageInfo<Product> pageInfo = new PageInfo<Product>(productMapper.selectByExample(example), 5);
        model.addAttribute(pageInfo);
        model.addAttribute("url", request.getRequestURI() + "?" + ParamUtils.params2String(request));
        return "index";
    }

    /**
     * 到注册页面
     *
     * @return
     */
    @GetMapping("register")
    public String register() {
        session.removeAttribute("errorMsg");
        return "register";
    }

    /**
     * 注册用户
     *
     * @return
     */
    @PostMapping("register")
    public String register(User user, Model model) {
        model.addAttribute("errorMsg", session.getAttribute("errorMsg"));
        session.removeAttribute("errorMsg");
        if (userService.selectByUsername(user.getUsername()) != null) {
            model.addAttribute("msg", "用户名已经存在");
            return "register";
        }
        if (userService.selectByEmail(user.getEmail()) != null) {
            model.addAttribute("msg", "邮箱已经存在");
            return "register";
        }

        user.setAddtime(new Date());
        user.setDeal(0);
        user.setIllegal(0);
        userMapper.insert(user);
        model.addAttribute("errorMsg", "注册成功,验证信息已经发送邮箱,请去邮箱激活!");
        return "redirect:index";
    }

    /**
     * 登录页面
     *
     * @return
     */
    @GetMapping("login")
    public String login() {
        session.removeAttribute("errorMsg");
        return "login";
    }

    /**
     * 登录
     *
     * @return
     */
    @PostMapping("login")
    public String login(String username, String password, HttpSession session, Model model) {
        User user = userService.login(username, password);
        if (null == user) {
            model.addAttribute("msg", "用户名或密码错误");
            return "login";
        }
        session.setAttribute("sessionUser", user);
        return "redirect:index";
    }

    /**
     * 退出系统
     *
     * @return
     */
    @RequestMapping("logout")
    public String logout(HttpSession session) {
        session.removeAttribute("sessionUser");
        return "redirect:login";
    }

    /**
     * 项目详情
     *
     * @param id
     * @return
     */
    @RequestMapping("product/{id}")
    public String product(@PathVariable Integer id, Model model) {

        model.addAttribute("errorMsg", session.getAttribute("errorMsg"));
        session.removeAttribute("errorMsg");
        Product product = productMapper.selectByPrimaryKey(id);
        updateProduct(product);
        model.addAttribute(product);
        //竞价记录
        List<OfferPo> offerList = offerMapper.selectPoByProduct(id);

        List<CommentPo> commentList = commentMapper.selectPoByProduct(id);

        model.addAttribute("offerList", offerList);
        model.addAttribute("commentList", commentList);

        if (frontUser() != null) {
            //竞价判断
            Record record = new Record();
            record.setProductid(id);
            record.setUserid(frontUser().getId());
            record = recordMapper.selectOne(record);
            if (null == record) {
                request.setAttribute("err", "error");
            }
        }

        return "project";
    }
}

 

package school.controller;

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.RequestMapping;
import school.domain.Offer;
import school.domain.Product;
import school.domain.Record;
import school.mapper.OfferMapper;
import school.mapper.ProductMapper;
import school.mapper.RecordMapper;
import school.support.BaseController;

import java.util.Date;

@RequestMapping("offer")
@Controller
public class OfferController extends BaseController {

    @Autowired
    private OfferMapper offerMapper;
    @Autowired
    private ProductMapper productMapper;
    @Autowired
    private RecordMapper recordMapper;

    /**
     * 竞价
     * @return
     */
    @RequestMapping("send")
    public String send(Integer price ,Integer productid){
        session.removeAttribute("errorMsg");
        Product product = productMapper.selectByPrimaryKey(productid);
        updateProduct(product);

        //竞价判断
        Record record = new Record();
        record.setProductid(productid);
        record.setUserid(frontUser().getId());
        record = recordMapper.selectOne(record);
        if(null == record) {
            session.setAttribute("error","error");
            return refresh();
        }


        if(!product.getStatus().equals("拍卖中")){
            session.setAttribute("errorMsg","该商品不能拍卖,不在拍卖的时间范围");
            return refresh();
        }
        if(price < product.getCurrent()){
            session.setAttribute("errorMsg","您的出价必须高于现在的出价");
            return refresh();
        }
        product.setCount(product.getCount()+1);
        product.setCurrent(price);
        product.setIllegalprice(price);
        product.setIllegaluser(frontUser().getId());
        productMapper.updateByPrimaryKey(product);

        //添加记录
        Offer offer = new Offer();
        offer.setAddtime(new Date());
        offer.setPrice(price);
        offer.setProductid(productid);
        offer.setUserid(frontUser().getId());
        offerMapper.insertSelective(offer);
        session.setAttribute("errorMsg","竞价成功");
        return refresh();
    }

    @RequestMapping("pay/{id}")
    public String pay(@PathVariable Integer id){
        Record record = new Record();
        record.setProductid(id);
        record.setUserid(frontUser().getId());
        recordMapper.insert(record);
        session.setAttribute("errorMsg","支付成功,可以参与竞拍了");
        return refresh();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一章 绪论 1 1.1 系统应用背景与功能 1 1.2 系统预览 2 1.3 系统特点 2 第二章 系统要解决的技术问题 4 2.1 连接SQL Server 2000 4 2.2 安装jspSmartUpload文件上传组件 4 2.3 JSP中文乱码问题的处理 5 2.4 页面无刷新地提交数据 6 第三章 系统设计 8 3.1 系统设计思想 8 3.1.1 功能的独立化、模块化。 8 3.1.2 三层架构设计思想 8 3.1.3 系统实现的功能 9 3.2 系统层次概框图 10 3.3 系统模块详细介绍 11 3.3.1 前台模块 11 3.3.2 后台模块 12 第四章 数据库设计 13 4.1 数据库需求分析 13 4.2 数据库逻辑设计 13 第五章 详细设计 19 5.1 系统JavaBean的实现 19 5.1.1 用户出价、商品、短信Bean的功能分析 20 5.1.2 数据库连接类的功能分析 20 5.1.3 管理员登录类的功能分析 20 5.1.4 商品搜索类的功能分析 21 5.1.5 用户登录类的功能分析 21 5.1.6 操作商品类的功能分析 22 5.1.7 操作用户类的功能分析 24 5.1.8 操作短信息类的功能分析 25 5.1.9 操作出价信息类的功能分析 26 5.2 用户界面实现 27 5.2.1 系统首页设计 27 5.2.2 用户登录模块设计 27 5.2.3 用户注册模块设计 28 5.2.4 商品发布模块设计 30 5.3 后台管理界面实现 30 5.3.1 后台登录模块设计 31 5.3.2 系统配置模块设计 31 第六章 系统的运行演示效果 33 6.1 系统前台演示效果 33 6.1.1 搜索商品的运行效果 33 6.1.2 用户注册页面运行效果 33 6.1.3 发布商品页面运行效果 33 6.1.4 浏览商品页面运行效果 35 6.1.5 出价页面运行效果 35 6.2 系统后台演示效果 35 6.1.1 后台用户登录运行效果 35 6.1.2 管理用户运行效果 36 6.1.3 管理商品运行效果 36 6.1.4 管理短信息运行效果 37 第七章 结论 38 参考文献 39 致谢 40
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值