基于java+ssm+jsp的模具制造企业订单跟踪管理系统

项目介绍

现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本模具制造企业订单跟踪管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此模具制造企业订单跟踪管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发.模具制造企业订单跟踪管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。

在这里插入图片描述

开发环境

编程语言:Java
数据库 :Mysql
系统架构:B/S
后端框架:SSM
编译工具:idea或者eclipse,jdk1.8,maven
支持定做:java/php/python/android/小程序ue/爬虫/c#/asp.net

系统实现

5.1用户信息管理
如图5.1显示的就是用户信息管理页面,此页面提供给管理员的功能有:用户信息的查询管理,可以删除用户信息、修改用户信息、新增用户信息,
还进行了对用户名称的模糊查询的条件
在这里插入图片描述

图5.1 用户信息管理页面

5.2 员工信息管理
如图5.2显示的就是员工信息管理页面,此页面提供给管理员的功能有:查看已发布的员工信息数据,修改员工信息,员工信息作废,即可删除。

在这里插入图片描述

图5.2 员工信息管理页面

5.3订单信息管理
如图5.3显示的就是订单信息管理页面,此页面提供给管理员的功能有:根据订单信息进行条件查询,还可以对订单信息进行新增、修改、查询操作等等。

在这里插入图片描述

图5.3 订单信息管理页面

5.1公告信息管理
如图5.4显示的就是公告信息管理页面,此页面提供给管理员的功能有:根据公告信息进行新增、修改、查询操作等等。

在这里插入图片描述

图5.4 公告信息管理页面

核心代码

package com.controller;


import java.text.SimpleDateFormat;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import org.springframework.beans.BeanUtils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import com.service.TokenService;
import com.utils.StringUtil;
import java.lang.reflect.InvocationTargetException;

import com.service.DictionaryService;
import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;

import com.entity.DingdanEntity;

import com.service.DingdanService;
import com.entity.view.DingdanView;
import com.service.YonghuService;
import com.entity.YonghuEntity;

import com.utils.PageUtils;
import com.utils.R;

/**
 * 订单
 * 后端接口
 * @author
 * @email
 * @date 
*/
@RestController
@Controller
@RequestMapping("/dingdan")
public class DingdanController {
    private static final Logger logger = LoggerFactory.getLogger(DingdanController.class);

    @Autowired
    private DingdanService dingdanService;


    @Autowired
    private TokenService tokenService;
    @Autowired
    private DictionaryService dictionaryService;



    //级联表service
    @Autowired
    private YonghuService yonghuService;


    /**
    * 后端列表
    */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
     
        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(StringUtil.isNotEmpty(role) && "用户".equals(role)){
            params.put("yonghuId",request.getSession().getAttribute("userId"));
        }
        params.put("orderBy","id");
        PageUtils page = dingdanService.queryPage(params);

        //字典表数据转换
        List<DingdanView> list =(List<DingdanView>)page.getList();
        for(DingdanView c:list){
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(c);
        }
        return R.ok().put("data", page);
    }

    /**
    * 后端详情
    */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        DingdanEntity dingdan = dingdanService.selectById(id);
        if(dingdan !=null){
            //entity转view
            DingdanView view = new DingdanView();
            BeanUtils.copyProperties( dingdan , view );//把实体数据重构到view中

            //级联表
            YonghuEntity yonghu = yonghuService.selectById(dingdan.getYonghuId());
            if(yonghu != null){
                BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createDate"});//把级联的数据添加到view中,并排除id和创建时间字段
                view.setYonghuId(yonghu.getId());
            }
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(view);
            return R.ok().put("data", view);
        }else {
            return R.error(511,"查不到数据");
        }

    }

    /**
    * 后端保存
    */
    @RequestMapping("ve")
    public R save(@RequestBody DingdanEntity dingdan, HttpServletRequest request){
        logger.debug("save方法:,,Controller:{},,dingdan:{}",this.getClass().getName(),dingdan.toString());
        dingdan.setDingdanTypes(1);
        Wrapper<DingdanEntity> queryWrapper = new EntityWrapper<DingdanEntity>()
            .eq("dingdan_bianhao", dingdan.getDingdanBianhao())
            .eq("yonghu_id", dingdan.getYonghuId())
            .eq("dingdan_name", dingdan.getDingdanName())
            .eq("dingdan_number", dingdan.getDingdanNumber())
            .eq("dingdan_types", dingdan.getDingdanTypes())
            ;
        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        DingdanEntity dingdanEntity = dingdanService.selectOne(queryWrapper);
        if(dingdanEntity==null){
            dingdan.setCreateTime(new Date());
        //  String role = String.valueOf(request.getSession().getAttribute("role"));
        //  if("".equals(role)){
        //      dingdan.set
        //  }
            dingdanService.insert(dingdan);
            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }

    /**
    * 后端修改
    */
    @RequestMapping("/update")
    public R update(@RequestBody DingdanEntity dingdan, HttpServletRequest request){
        logger.debug("update方法:,,Controller:{},,dingdan:{}",this.getClass().getName(),dingdan.toString());
        //根据字段查询是否有相同数据
        Wrapper<DingdanEntity> queryWrapper = new EntityWrapper<DingdanEntity>()
            .notIn("id",dingdan.getId())
            .andNew()
            .eq("dingdan_bianhao", dingdan.getDingdanBianhao())
            .eq("yonghu_id", dingdan.getYonghuId())
            .eq("dingdan_name", dingdan.getDingdanName())
            .eq("dingdan_number", dingdan.getDingdanNumber())
            .eq("dingdan_types", dingdan.getDingdanTypes())
            ;
        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        DingdanEntity dingdanEntity = dingdanService.selectOne(queryWrapper);
        if(dingdanEntity==null){
            //  String role = String.valueOf(request.getSession().getAttribute("role"));
            //  if("".equals(role)){
            //      dingdan.set
            //  }
            dingdanService.updateById(dingdan);//根据id更新
            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }



    /**
    * 支付
    */
    @RequestMapping("/zhifu")
    public R zhifu(Integer ids){
        DingdanEntity dingdan = dingdanService.selectById(ids);
        if(dingdan == null){
            return R.error();
        }
        dingdan.setDingdanTypes(2);
        dingdanService.updateById(dingdan);
        return R.ok();
    }


    /**
    * 生产
    */
    @RequestMapping("engcan")
    public R shengcan(Integer ids){
        DingdanEntity dingdan = dingdanService.selectById(ids);
        if(dingdan == null){
            return R.error();
        }
        dingdan.setDingdanTypes(3);
        dingdanService.updateById(dingdan);
        return R.ok();
    }

    /**
    * 生产成功
    */
    @RequestMapping("enggong")
    public R chenggong(Integer ids){
        DingdanEntity dingdan = dingdanService.selectById(ids);
        if(dingdan == null){
            return R.error();
        }
        dingdan.setDingdanTypes(4);
        dingdanService.updateById(dingdan);
        return R.ok();
    }

    /**
    * 收货
    */
    @RequestMapping("ouhuo")
    public R shouhuo(Integer ids){
        DingdanEntity dingdan = dingdanService.selectById(ids);
        if(dingdan == null){
            return R.error();
        }
        dingdan.setDingdanTypes(5);
        dingdanService.updateById(dingdan);
        return R.ok();
    }



    /**
    * 删除
    */
    @RequestMapping("/delete")
    public R delete(@RequestBody Integer[] ids){
        logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
        dingdanService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }



    /**
    * 前端列表
    */
    @RequestMapping("st")
    public R list(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("list方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(StringUtil.isNotEmpty(role) && "用户".equals(role)){
            params.put("yonghuId",request.getSession().getAttribute("userId"));
        }
        // 没有指定排序字段就默认id倒序
        if(StringUtil.isEmpty(String.valueOf(params.get("orderBy")))){
            params.put("orderBy","id");
        }
        PageUtils page = dingdanService.queryPage(params);

        //字典表数据转换
        List<DingdanView> list =(List<DingdanView>)page.getList();
        for(DingdanView c:list){
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(c);
        }
        return R.ok().put("data", page);
    }

    /**
    * 前端详情
    */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        logger.debug("detail方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        DingdanEntity dingdan = dingdanService.selectById(id);
            if(dingdan !=null){
                //entity转view
        DingdanView view = new DingdanView();
                BeanUtils.copyProperties( dingdan , view );//把实体数据重构到view中

                //级联表
                    YonghuEntity yonghu = yonghuService.selectById(dingdan.getYonghuId());
                if(yonghu != null){
                    BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createDate"});//把级联的数据添加到view中,并排除id和创建时间字段
                    view.setYonghuId(yonghu.getId());
                }
                //修改对应字典表字段
                dictionaryService.dictionaryConvert(view);
                return R.ok().put("data", view);
            }else {
                return R.error(511,"查不到数据");
            }
    }


    /**
    * 前端保存
    */
    @RequestMapping("/add")
    public R add(@RequestBody DingdanEntity dingdan, HttpServletRequest request){
        logger.debug("add方法:,,Controller:{},,dingdan:{}",this.getClass().getName(),dingdan.toString());
        Wrapper<DingdanEntity> queryWrapper = new EntityWrapper<DingdanEntity>()
            .eq("dingdan_bianhao", dingdan.getDingdanBianhao())
            .eq("yonghu_id", dingdan.getYonghuId())
            .eq("dingdan_name", dingdan.getDingdanName())
            .eq("dingdan_number", dingdan.getDingdanNumber())
            .eq("dingdan_types", dingdan.getDingdanTypes())
            ;
        logger.info("sql语句:"+queryWrapper.getSqlSegment());
    DingdanEntity dingdanEntity = dingdanService.selectOne(queryWrapper);
        if(dingdanEntity==null){
            dingdan.setCreateTime(new Date());
        //  String role = String.valueOf(request.getSession().getAttribute("role"));
        //  if("".equals(role)){
        //      dingdan.set
        //  }
        dingdanService.insert(dingdan);
            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }





}

论文参考

目录
第一章 绪论 5
1.1 研究背景 5
1.2 系统研究现状 5
1.3 系统实现的功能 6
1.4 系统实现的特点 6
1.5 本文的组织结构 6
第二章开发技术与环境配置 7
2.1 Java语言简介 7
2.2 Vue技术 8
2.3 MySQL环境配置 8
2.4 IDEA环境配置 9
2.5 Mysql数据库介绍 9
2.6 B/S架构 9
第三章系统分析与设计 11
3.1 可行性分析 11
3.1.1 技术可行性 11
3.1.2 操作可行性 11
3.1.3经济可行性 11
3.2 需求分析 12
3.3 总体设计 12
3.4 数据库设计与实现 13
3.4.1 数据库概念结构设计 13
3.4.2 数据库具体设计 14
第四章 系统功能的具体实现 22
4.1 系统功能模块 22
4.2 管理员功能模块 25
第五章 系统测试 29
总结 30
参考文献 31
致谢 32

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_3306428634

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值