iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java实战范例之进销存管理系统的实现
  • 723
分享到

Java实战范例之进销存管理系统的实现

2024-04-02 19:04:59 723人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

一、项目简述 本系统功能包括: 库存管理,入库管理,出库管理,往来管理,基础资料, 系统管理,消息中心,系统监控等等。 二、项目运行 环境配置: jdk1.8 + Tomcat8.5

一、项目简述

本系统功能包括: 库存管理,入库管理,出库管理,往来管理,基础资料, 系统管理,消息中心,系统监控等等。

二、项目运行

环境配置: jdk1.8 + Tomcat8.5 + Mysql + HBuilderX ( WEBstORM也 行)+ Eclispe ( IntelliJ idea ,Eclispe,MyEclispe , Sts都支持)。

项目技术: SpringBoot + Maven + mybatis-plus+ Vue + Redis + shiro + Druid + logback 组成,B/S模萤;,其他:fastJSON, poi, swagger-ui, quartz, lombok (简化代码)等

采购发票登记代码:



@api(tags="采购发票登记")
@RestController
@RequestMapping("/finance/finPurInvoice")
@Slf4j
public class FinPurInvoiceController {
	@Autowired
	private IFinPurInvoiceService finPurInvoiceService;
	@Autowired
	private IFinPurInvoiceEntryService finPurInvoiceEntryService;
	
	
	@AutoLog(value = "采购发票登记-分页列表查询")
	@Apioperation(value="采购发票登记-分页列表查询", notes="采购发票登记-分页列表查询")
	@GetMapping(value = {"/list", "/list/{isRubric}"})
	public Result<?> queryPageList(FinPurInvoice finPurInvoice,
								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
								   httpservletRequest req) {
		QueryWrapper<FinPurInvoice> queryWrapper = QueryGenerator.initQueryWrapper(finPurInvoice, req.getParameterMap());
		Page<FinPurInvoice> page = new Page<FinPurInvoice>(pageNo, pageSize);
		IPage<FinPurInvoice> pageList = finPurInvoiceService.page(page, queryWrapper);
		return Result.ok(pageList);
	}
	
	
	@AutoLog(value = "采购发票登记-添加")
	@ApiOperation(value="采购发票登记-添加", notes="采购发票登记-添加")
	@PostMapping(value = "/add")
	public Result<?> add(@RequestBody FinPurInvoicePage finPurInvoicePage) {
		FinPurInvoice finPurInvoice = new FinPurInvoice();
		BeanUtils.copyProperties(finPurInvoicePage, finPurInvoice);
		finPurInvoiceService.saveMain(finPurInvoice, finPurInvoicePage.getFinPurInvoiceEntryList());
		return Result.ok("添加成功!");
	}
	
	
	@AutoLog(value = "采购发票登记-编辑")
	@ApiOperation(value="采购发票登记-编辑", notes="采购发票登记-编辑")
	@PutMapping(value = "/edit")
	public Result<?> edit(@RequestBody FinPurInvoicePage finPurInvoicePage) {
		FinPurInvoice finPurInvoice = new FinPurInvoice();
		BeanUtils.copyProperties(finPurInvoicePage, finPurInvoice);
		FinPurInvoice finPurInvoiceEntity = finPurInvoiceService.getById(finPurInvoice.getId());
		if(finPurInvoiceEntity==null) {
			return Result.error("未找到对应数据");
		}
		finPurInvoiceService.updateMain(finPurInvoice, finPurInvoicePage.getFinPurInvoiceEntryList());
		return Result.ok("编辑成功!");
	}
	
	
	@AutoLog(value = "采购发票登记-通过id删除")
	@ApiOperation(value="采购发票登记-通过id删除", notes="采购发票登记-通过id删除")
	@DeleteMapping(value = "/delete")
	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
		finPurInvoiceService.delMain(id);
		return Result.ok("删除成功!");
	}
	
	
	@AutoLog(value = "采购发票登记-批量删除")
	@ApiOperation(value="采购发票登记-批量删除", notes="采购发票登记-批量删除")
	@DeleteMapping(value = "/deleteBatch")
	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
		this.finPurInvoiceService.delBatchMain(Arrays.asList(ids.split(",")));
		return Result.ok("批量删除成功!");
	}
	
	
	@AutoLog(value = "采购发票登记-通过id查询")
	@ApiOperation(value="采购发票登记-通过id查询", notes="采购发票登记-通过id查询")
	@GetMapping(value = "/queryById")
	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
		FinPurInvoice finPurInvoice = finPurInvoiceService.getById(id);
		if(finPurInvoice==null) {
			return Result.error("未找到对应数据");
		}
		return Result.ok(finPurInvoice);
 
	}
	
	
	@AutoLog(value = "明细通过主表ID查询")
	@ApiOperation(value="明细主表ID查询", notes="明细-通主表ID查询")
	@GetMapping(value = "/queryFinPurInvoiceEntryByMainId")
	public Result<?> queryFinPurInvoiceEntryListByMainId(@RequestParam(name="id",required=true) String id) {
		List<FinPurInvoiceEntry> finPurInvoiceEntryList = finPurInvoiceEntryService.selectByMainId(id);
		return Result.ok(finPurInvoiceEntryList);
	}
 
    
    @RequestMapping(value = {"/exportXls", "/exportXls/{isRubric}"})
    public ModelAndView exportXls(HttpServletRequest request, FinPurInvoice finPurInvoice) {
      // Step.1 组装查询条件查询数据
      QueryWrapper<FinPurInvoice> queryWrapper = QueryGenerator.initQueryWrapper(finPurInvoice, request.getParameterMap());
      LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 
      //Step.2 获取导出数据
      List<FinPurInvoice> queryList = finPurInvoiceService.list(queryWrapper);
      // 过滤选中数据
      String selections = request.getParameter("selections");
      List<FinPurInvoice> finPurInvoiceList = new ArrayList<FinPurInvoice>();
      if(oConvertUtils.isEmpty(selections)) {
          finPurInvoiceList = queryList;
      }else {
          List<String> selectionList = Arrays.asList(selections.split(","));
          finPurInvoiceList = queryList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
      }
 
      // Step.3 组装pageList
      List<FinPurInvoicePage> pageList = new ArrayList<FinPurInvoicePage>();
      for (FinPurInvoice main : finPurInvoiceList) {
          FinPurInvoicePage vo = new FinPurInvoicePage();
          BeanUtils.copyProperties(main, vo);
          List<FinPurInvoiceEntry> finPurInvoiceEntryList = finPurInvoiceEntryService.selectByMainId(main.getId());
          vo.setFinPurInvoiceEntryList(finPurInvoiceEntryList);
          pageList.add(vo);
      }
 
      // Step.4 AutoPoi 导出excel
      ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
      mv.addObject(NormalExcelConstants.FILE_NAME, "采购发票登记列表");
      mv.addObject(NormalExcelConstants.CLASS, FinPurInvoicePage.class);
      mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("采购发票登记数据", "导出人:"+sysUser.getRealname(), "采购发票登记"));
      mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
      return mv;
    }
 
    
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
      MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
      Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
      for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
          MultipartFile file = entity.getValue();// 获取上传文件对象
          ImportParams params = new ImportParams();
          params.setTitleRows(2);
          params.setHeadRows(1);
          params.setNeedSave(true);
          try {
              List<FinPurInvoicePage> list = ExcelImportUtil.importExcel(file.getInputStream(), FinPurInvoicePage.class, params);
              for (FinPurInvoicePage page : list) {
                  FinPurInvoice po = new FinPurInvoice();
                  BeanUtils.copyProperties(page, po);
                  finPurInvoiceService.saveMain(po, page.getFinPurInvoiceEntryList());
              }
              return Result.ok("文件导入成功!数据行数:" + list.size());
          } catch (Exception e) {
              log.error(e.getMessage(),e);
              return Result.error("文件导入失败:"+e.getMessage());
          } finally {
              try {
                  file.getInputStream().close();
              } catch (IOException e) {
                  e.printStackTrace();
              }
          }
      }
      return Result.ok("文件导入失败!");
    }
 
	 @AutoLog(value = "采购发票登记-通过id审核")
	 @ApiOperation(value="采购发票登记-通过id审核", notes="采购发票登记-通过id审核")
	 @PutMapping(value = "/approve")
	 public Result<?> approve(@RequestBody jsONObject json) {
		 finPurInvoiceService.approve(json.getString("id"));
		 return Result.ok("审核通过!");
	 }
 
 }

到此这篇关于Java 实战范例之进销存管理系统的实现的文章就介绍到这了,更多相关Java 进销存管理系统内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java实战范例之进销存管理系统的实现

本文链接: https://www.lsjlt.com/news/157205.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java实战范例之进销存管理系统的实现
    一、项目简述 本系统功能包括: 库存管理,入库管理,出库管理,往来管理,基础资料, 系统管理,消息中心,系统监控等等。 二、项目运行 环境配置: Jdk1.8 + Tomcat8.5...
    99+
    2024-04-02
  • Java 实战范例之员工管理系统的实现
    一、项目简述 本系统功能包括:分为前端翻后端部分,包括用户,区分晋通用户以及誉里员用户,包括首页展示,部门管理,人事管理,员工管理三个模块等等。 二、项目运行 环境配置: Jdkl ...
    99+
    2024-04-02
  • 钉钉系统能实现销售进销存管理
    一、钉钉系统的优势 快捷高效:钉钉系统采用了企业级的通讯架构和云计算技术,可以实现即时通讯、多方会议、文件共享等高效的协同办公功能。 高度集成:钉钉系统可以与企业现有的销售、采购、库存等系统进行无缝集成,让企业管理者能够更加高效地进行管...
    99+
    2023-10-28
    进销存管理 系统
  • python实现超市进销存管理系统
    本文实例为大家分享了python实现超市进销存管理系统的具体代码,供大家参考,具体内容如下 面向对象程序设计 系统包括7种操作,分别是:1.查询所有商品;2.添加商品;3.修改商品;...
    99+
    2024-04-02
  • python实现商品进销存管理系统
    本文实例为大家分享了python实现商品进销存管理系统,基于python,MySQL,tkinter import pymysql #导入数据库模块 import tkinter #...
    99+
    2024-04-02
  • Java实战之药品管理系统的实现
    目录项目介绍环境需要技术栈使用说明效果图展示实现核心代码用户相关的controller控制层药品相关的controller供应商相关的controller项目介绍 本项目属于前后端分...
    99+
    2024-04-02
  • 如何用Java代码实现进销存管理系统
    本篇文章为大家展示了如何用Java代码实现进销存管理系统,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、项目简述本系统功能包括: 库存管理,入库管理,出库管理,往来管理,基础资料, 系统管理,消息...
    99+
    2023-06-25
  • Java实战之图书管理系统的实现
    目录一、项目运行二、效果图三、核心代码登录控制层图书管理控制层读者管理控制层一、项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(Int...
    99+
    2024-04-02
  • Java实战之医院管理系统的实现
    目录项目介绍环境需要技术栈使用说明效果图展示核心代码用户管理控制层医生管理控制层病房管理控制层项目介绍 医院管理系统,分为管理员、医生、病人三种角色; 管理员主要功能包括: 首页、系...
    99+
    2024-04-02
  • 钉钉系统能实现销售进销存管理么
    首先,钉钉系统提供了强大的客户关系管理功能。客户关系管理可以帮助企业实现客户信息管理、客户沟通管理、销售过程管理、销售业绩管理等一系列功能,帮助企业更好地了解客户需求,提高销售业绩。 其次,钉钉系统提供了强大的销售管理功能。企业可以通过钉...
    99+
    2023-10-28
    进销存管理 系统
  • Java 实战范例之校园二手市场系统的实现
    一、项目简述( +IW文档) 功能:本系统分用户前台和管理员后台。 本系统用例模型有三种,分别是游客、注册用户和系统管 理员。下面分别对这三个角色的功能进行描述: 1) 诞 游客是未...
    99+
    2024-04-02
  • Java 实战范例之线上新闻平台系统的实现
    一、项目简述 功能: 用户的登录注册,新闻的分类查询,评论留言,投稿,新闻的后台管理,发布,审核,投稿管理以及汇总统计等等。 二、项目运行 环境配置: Jdk1.8 + Tomcat...
    99+
    2024-04-02
  • Java实战之实现OA办公管理系统
    目录介绍效果图核心代码用户管理控制层部门管理控制层角色管理控制层会议室管理控制层介绍 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(Intel...
    99+
    2024-04-02
  • python如何实现商品进销存管理系统
    基于python,MySQL,tkinterimport pymysql #导入数据库模块 import tkinter #导入相关的窗体模块 import os #利用os模块可以方便定义完整路径 import tkinter.mess...
    99+
    2023-05-19
    Python
  • Java实战之超市收银管理系统的实现
    目录一、项目简述二、项目运行三、效果图四、核心代码品类信息控制层用户信息控制层商品信息控制层一、项目简述 本系统主要实现的功能有:收银、报表、用户管理、商品管理、销售管理、进货退货管...
    99+
    2024-04-02
  • Java实战之网上书店管理系统的实现
    目录1.效果展示2.需求功能3.系统总体设计及部分代码3.1登录模块设计3.2新用户的注册3.3图书添加模块3.4图书添加事件3.5买家信息维护3.6订单管理模块4.数据库设计4.1...
    99+
    2024-04-02
  • Java实战之酒店人事管理系统的实现
    目录一、项目运行二、效果图三、核心代码用户管理注册登录控制层房间管理控制层订单管理控制层角色管理控制层一、项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql ...
    99+
    2024-04-02
  • Java实战之课程信息管理系统的实现
    目录一、项目运行二、效果图展示三、核心代码用户管理控制层排课控制层公告控制层角色控制层一、项目运行 环境配置: Jdk1.8 + Tomcat8.0 + mysql + Eclisp...
    99+
    2024-04-02
  • Java 实战范例之线上婚纱摄影预定系统的实现
    一、项目简述 功能: 前后用户的登录注册,婚纱照片分类,查看,摄影师预 订,后台订单管理,图片管理等等。 二、项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysq...
    99+
    2024-04-02
  • 怎么用python实现超市进销存管理系统
    本篇内容介绍了“怎么用python实现超市进销存管理系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!面向对象程序设计python实现超市进...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作