JSP MYSQL超市管理系统SSH三层统计图基于SSM的超市进销存管理系统-java进销存管理

"基于SSM的超市进销存管理系统-java进销存管理

1.包含源程序,数据库脚本。代码和数据库脚本都有详细注释。
2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善

 代码已经上传github,下载地址https://github.com/21503882/market
开发环境:
Eclipse ,MYSQL,JDK1.7,Tomcat 7
涉及技术点:
MVC模式、SpringMvc、Mybatis、Spring、HTML、JavaScript、CSS、JQUERY、DWR、Ajax等
系统采用Mybatis框架实现ORM对象关系映射,前台JSP实现,后台springMvc映射,使用Spring框架进行整合。适合学习J2EE的一段时间的熟手,代码思路清晰,注解详细,数据库用的是mysql5.1,服务器用的tomcat7,JDK版本1.7. 编程软件Eclispe J2EE版本。是典型MVC架构,并且前后台分离

具体功能这里不再赘述,请下方看系统详细演示图,如果大家有什么疑问或者什么不懂得可以在下方给我留言,或者你有更好的建议等等都可以的,也可以找我和我一起交流沟通,互相学习进步!但是dai。ma。you。chang
好了下面让我来给大家展示一下这个项目的页面效果:
------------"

本系统主要分为仓库管理、财务管理、销售管理、品牌分析、会员管理、系统管理等六大功能模块,每个功能模块又分为若干个子模块。系统的功能模块具体描述如下:
1.    仓库管理
商品采购管理:商品采购管理对商品的采购信息进行新增、编辑、删除和查看等管理,并可以按采购编号、采购日期和采购员等信息进行查询。
品牌信息管理:品牌信息管理对商品的品牌信息进行新增、编辑、删除和查看等管理,并可以按编号和品牌名称查询。
库存查询:库存查询模块对商品的库存信息进行查询,可以按编号、商品名称进行查询。
2.    销售管理
商品销售管理:商品销售管理对商品的销售信息进行新增、编辑、删除和查看等管理,
按会员卡号、姓名、销售员进行查询。
销售金额统计:销售金额统计对商品的销售金额进行统计,可以按销售日期、商品名称进行统计查询。
销售品牌统计:销售品牌统计对品牌的销售信息进行统计,可以按销售日期查询某个品牌销售数量和金额。
3.    财务管理
采购金额统计:采购金额统计对商品的采购金额信息进行统计,可以按采购日期查询采购明细。
销售金额统计:销售金额统计对商品的销售信息按销售日期、商品名称进行查询。
4.    品牌分析
品牌统计分析:对品牌销售信息按销售日期生成销售统计图。
5.    会员信息
会员信息管理:会员信息管理对会员信息进行新增、编辑、删除和查看等管理,按姓名、身份证号进行查询。
会员卡管理:会员卡管理对会员卡信息进行新增、编辑、删除和查看等管理,按会员卡号进行查询。
6.    系统管理
用户管理:用户管理对系统的操作用户信息进行新增、编辑、删除和查看等管理,可以按用户姓名、用户类型查询。
员工管理:员工管理对员工信息进行新增、编辑、删除和查看等管理,可以按员工姓名和职位类型进行查询。


 
图4-2 登录页面
 
图4-3系统主页面

 
图4-4品牌信息管理主页面

 
图4-5新增品牌信息页面

 
新增商品界面


 
图4-6商品采购信息管理主页面
 
图4-7新增商品采购信息页面
 
图4-8选择商品页面
 
图4-9商品库存查询页面
 
图4-10商品销售信息管理主页面


图4-11新增商品销售信息页面
 
图4-12选择会员页面
 
图4-13销售金额统计页面
 
图4-14销售品牌统计页面
 
图4-15销售金额统计页面 
图4-16采购金额统计页面
 
图4-17品牌统计分析页面
 
图4-16采购金额统计页面

 
图4-18会员信息管理主页面
 
图4-19新增会员信息页面
 
图4-20会员卡信息管理主页面
 
图4-21新增会员卡信息页面
 
图4-22用户信息管理主页面
 
图4-23员工信息管理主页面
 
图4-24新增员工信息页面

package com.wnliam.uqdate.controller;

import com.wnliam.uqdate.info.FileInfo;
import com.wnliam.uqdate.util.GetPathUtil;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

@RestController
@RequestMapping(value = "/category")
public class FileCategoryController {
    private String folder = "";
    File crrentParent = null;
    File[] crrentParentFiles = null;

    public FileCategoryController() {
        try {
            folder = GetPathUtil.getJarRootPath() + "/static";
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }

    @RequestMapping(value = "/all")
    public List<FileInfo> getAllFile(@RequestParam(value = "openid") String openID) {
        String filepath = folder + "/" + openID;
        System.out.println("openid:" + openID);
        File root = new File(filepath);
        crrentParent = root;
        System.out.println("root:" + root.getAbsoluteFile());
        crrentParentFiles = root.listFiles();


        return buildList();
    }

    @PostMapping
    public List<FileInfo> getFile(@RequestParam(value = "openid") String openID,
                                     @RequestParam(value = "flag") String filetype) {
        String filepath = folder + "/" + openID;
        System.out.println("openid:" + openID);
        File root = new File(filepath);
        crrentParent = root;
        System.out.println("root:" + root.getAbsoluteFile());
        crrentParentFiles = root.listFiles();

        return getFilesByType(filetype);
    }

    private List buildList(){
        List<FileInfo> list = new ArrayList<>();
        for (int i = 0; i < crrentParentFiles.length; i++) {
            FileInfo fileInfo = new FileInfo();
            fileInfo.setName(crrentParentFiles[i].getName());
            fileInfo.setTime(crrentParentFiles[i].lastModified() + "");
            fileInfo.setSize(crrentParentFiles[i].length() / 1024.0);
            list.add(fileInfo);
        }
        return list;
    }

    private List getFilesByType(String filetype){
        List<FileInfo> list = new ArrayList<>();
        String [] types= null;
        switch (filetype){
            case  "video":
                types = new String[]{"rm", "rmvn", "rmv", "mp4", "avi"};
                break;
            case "text":
                types = new String[]{"pdf", "xls" , "xlsx", "doc", "ppt","docx","text"};
                break;
            case "image":
                types = new String[]{"bmp", "jpg" , "jpeg", "png", "swf"};
                break;
            case "music":
                types = new String[]{"mp3", "wma" , "wav", "mid"};
                break;
            case "apk":
                types = new String[]{"apk"};
                break;
            case "z_r":
                types = new String[]{"rar","zip","iso"};
                break;
            default:
                types = new String[]{};
        }
        for (File f: crrentParentFiles){
            String localtype = getFileType(f.getName());
            boolean isContains = Arrays.asList(types).contains(localtype);
            if(isContains){
                FileInfo fileInfo = new FileInfo();
                fileInfo.setName(f.getName());
                fileInfo.setTime(f.lastModified() + "");
                fileInfo.setSize(f.length() / 1024.0);
                list.add(fileInfo);
            }
        }
        return list;
    }


    private String getFileType(String fileName) {
        if ("".equals(fileName)) try {
            throw new Exception("传入的文件名为空");
        } catch (Exception e) {
            e.printStackTrace();
        }
        String fileType=fileName.substring(fileName.lastIndexOf(".")+1,fileName.length());
        return fileType;
    }
}

代码已经上传github,下载地址https://github.com/21503882/market

发布了38 篇原创文章 · 获赞 10 · 访问量 4144

猜你喜欢

转载自blog.csdn.net/QQ21503882/article/details/102673779