package com.example.controller.commodity;
import com.example.pojo.commodity.Product;
import com.example.pojo.stock.Product_import;
import com.example.pojo.stock.Product_online;
import com.example.pojo.stock.Product_scrap;
import com.example.service.commodity.ImportService;
import com.example.service.commodity.OnlineService;
import com.example.service.commodity.ProductService;
import com.example.service.commodity.ScrapService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
/**
* @author liu
*/
@Controller
@RequestMapping("/product")
public class productController {
@Autowired
private ProductService productService;
@Autowired
private ImportService importService;
@Autowired
private ScrapService scrapService;
@Autowired
private OnlineService onlineService;
@RequestMapping("/queryAll")
public String queryAll(Model model) {
List<Product> products = productService.queryAll();
model.addAttribute("allProducts", products);
return "data-tables";
}
//根据ID查询:
@RequestMapping("/toQueryID")
public String toQueryID(String id) {
return "product/queryProdID";
}
@RequestMapping("/queryID")
public String queryID(String ProdID, Model model) {
Product product = productService.queryByID(ProdID);
System.out.println("【productID】" + product);
model.addAttribute("allProducts", product);
return "data-tables";
}
//根据名称查询:
@RequestMapping("/toQueryName")
public String toQueryName(String name) {
return "product/queryProdName";
}
@RequestMapping("/queryName")
public String queryName(String ProdName, Model model) {
Product product = productService.queryByName(ProdName);
System.out.println("【productName】" + product);
model.addAttribute("allProducts", product);
return "data-tables";
}
//根据类别查询:
@RequestMapping("/toQueryClass")
public String toQueryClass(String id) {
return "product/queryProdClass";
}
@RequestMapping("/queryClass")
public String queryClass(String ProdClass, Model model) {
List<Product> products = productService.queryByClass(ProdClass);
System.out.println("【productClass】" + products);
model.addAttribute("allProducts", products);
return "data-tables";
}
@RequestMapping("/queryProductBySomething")
public String queryProductBySomething(@RequestParam("proId") String proId,
@RequestParam("proName") String proName,
@RequestParam("proClass") String proClass,
Model model) {
List<Product> products = productService.queryBySomething(proId, proName, proClass);
System.out.println("模糊查询:" + products);
model.addAttribute("allProducts", products);
return "data-tables";
}
//这里开始是库存部分
@RequestMapping("/queryStock")
public String queryStock(Model model) {
List<Product> product_stock = productService.queryAll();
model.addAttribute("allProductStock", product_stock);
return "stock/stock-tables";
}
@RequestMapping("/queryProductBySomething2")
public String queryProductBySomething2(@RequestParam("proId") String proId,
@RequestParam("proName") String proName,
@RequestParam("proClass") String proClass,
Model model) {
List<Product> products = productService.queryBySomething(proId, proName, proClass);
System.out.println("模糊查询:" + products);
model.addAttribute("allProductStock", products);
return "stock/stock-tables";
}
//跳转到上架
@RequestMapping("/upProduct/{productId}")
public String upProduct(@PathVariable("productId") String productId, Model model) {
Product product = productService.queryByID(productId);
model.addAttribute("upProduct", product);
return "stock/up";
}
@RequestMapping("/up")
public String up(@RequestParam String productId, @RequestParam int productNumber, HttpServletResponse response) throws Exception {
response.setContentType("text/html; charset=UTF-8"); //转码
PrintWriter out = response.getWriter();
//【判断1】上架的数量为负数
if (productNumber < 0) {
out.println("<script>");
out.println("alert('【操作失败】上架的数量不能小于0');");
out.println("history.back();");
out.println("</script>");
return null;
}
//【判断2】上架的数量小于库存量
Product product = productService.queryByID(productId);
if (productNumber > product.getProduct_stock()) {
out.println("<script>");
out.println("alert('【操作失败】上架的数量不能大于库存量');");
out.println("history.back();");
out.println("</script>");
return null;
}
//【正常执行】
//【1】修改商品表中的在架量、库存量
int zaiJia = product.getProduct_online() + productNumber;
int kuCun = product.getProduct_stock() - productNumber;
product.setProduct_online(zaiJia);
product.setProduct_stock(kuCun);
productService.updateWhole(product);
//【2】插入上架记录
Product_online product_online = new Product_online();
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
product_online.setProduct_date(sdf.format(date));
product_online.setProduct_id(productId);
product_online.setProduct_name(product.getProduct_name());
product_online.setProduct_number(productNumber);
product_online.setProduct_price(product.getProduct_export_price());
product_online.setProduct_type(product.getProduct_class());
onlineService.insertOnline(product_online);
return "redirect:/product/queryStock";
}
//stocks-Tables报废商品按钮点击后反应
@RequestMapping("/scrapProduct/{productId}")
public String scarpProduct(@PathVariable("productId") String productId, Model model) {
Product product = productService.queryByID(productId);
model.addAttribute("scarpProduct", product);
return "stock/scrap";
}
//报废商品逻辑操作
@RequestMapping("/scrapProduct02")
public String scarpProduct02(@RequestParam String productId, @RequestParam int productNumber, @RequestParam String productType, Model model, HttpServletResponse response) throws Exception {
response.setContentType("text/html; charset=UTF-8"); //转码
PrintWriter out = response.getWriter();
Product product = productService.queryByID(productId);
//首先判断输入是否有误
if (productNumber < 0) { //【判断】报废数量小于0
out.println("<script>");
out.println("alert('【操作失败】报废的数量不能小于0');");
out.println("history.back();");
out.println("</script>");
return null;
}//【判断】如果报废的数量大于库存量
else if (productNumber > product.getProduct_stock()) {
out.println("<script>");
out.println("alert('【操作失败】报废的数量大于库存量');");
out.println("history.back();");
out.println("<
没有合适的资源?快使用搜索试试~ 我知道了~
基于JavaScript的超市收银系统设计源码
共1220个文件
svg:518个
js:121个
xml:119个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 144 浏览量
2024-04-07
00:20:10
上传
评论
收藏 36.99MB ZIP 举报
温馨提示
本项目是一个基于JavaScript语言开发的超市收银系统,包含1219个文件,主要文件类型包括图片、JavaScript脚本、XML配置文件、HTML页面、图片、CSS样式表、Java源代码、Java类文件、图片和字体文件。系统设计旨在为超市提供一个高效、便捷的收银解决方案,支持商品销售、库存管理、顾客结算等功能,以满足超市在收银方面的需求。
资源推荐
资源详情
资源评论
收起资源包目录
基于JavaScript的超市收银系统设计源码 (1220个子文件)
$CACHE_FILE$ 159B
productController.class 13KB
ShoppingController.class 7KB
StatisticsController.class 6KB
Product.class 6KB
VipController.class 5KB
Product_online.class 4KB
Product_import.class 4KB
Product_scrap.class 4KB
SellTable.class 4KB
ShiroConfig.class 4KB
ProductType.class 3KB
UserController.class 3KB
Shopping.class 3KB
ProductServiceImpl.class 3KB
Vip.class 3KB
loginController.class 3KB
UserRealm.class 3KB
User.class 3KB
SellTableController.class 2KB
VipServiceImpl.class 2KB
OnlineController.class 2KB
ImportController.class 2KB
ScrapController.class 2KB
SellTableServiceImpl.class 2KB
kunController.class 2KB
ShoppingServiceImpl.class 2KB
ProductMapper.class 2KB
UserServiceImpl.class 2KB
MyLocaleResolver.class 1KB
LoginHanderInterceptor.class 1KB
ProductService.class 1KB
MyMvcConfig.class 1KB
OnlineServiceImpl.class 1KB
ImportServiceImpl.class 1KB
ScrapServiceImpl.class 1KB
SellTableMapper.class 1014B
Springboot03WebApplication.class 907B
SellTableService.class 882B
ShoppingMapper.class 784B
VipMapper.class 704B
productImportController.class 686B
UserMapper.class 674B
ShoppingService.class 656B
CashierController.class 626B
ImportMapper.class 604B
OnlineMapper.class 604B
ScrapMapper.class 597B
UserService.class 546B
VipService.class 543B
OnlineService.class 476B
ImportService.class 476B
ScrapService.class 469B
bootstrap.min.css 137KB
bootstrap.min.css 137KB
style.css 124KB
style.css 124KB
materialdesignicons.min.css 76KB
materialdesignicons.min.css 76KB
fontawesome-all.css 47KB
fontawesome-all.css 47KB
fullcalendar.css 35KB
fullcalendar.css 35KB
weather-icons.min.css 23KB
weather-icons.min.css 23KB
summernote-bs4.css 20KB
summernote-bs4.css 20KB
themify-icons.css 17KB
themify-icons.css 17KB
select2.css 17KB
select2.css 17KB
chartist.css 14KB
chartist.css 14KB
simple-line-icons.css 13KB
simple-line-icons.css 13KB
stylesheet.css 13KB
flag-icon.min.css 12KB
flag-icon.min.css 12KB
bootstrap-select.css 11KB
bootstrap-select.css 11KB
daterangepicker.css 9KB
daterangepicker.css 9KB
tempusdominus-bootstrap-4.css 8KB
tempusdominus-bootstrap-4.css 8KB
jquery-jvectormap-2.0.2.css 6KB
jquery-jvectormap-2.0.2.css 6KB
jquery.minicolors.css 6KB
jquery.minicolors.css 6KB
dataTables.bootstrap4.css 6KB
dataTables.bootstrap4.css 6KB
fullcalendar.print.css 6KB
fullcalendar.print.css 6KB
buttons.bootstrap4.css 5KB
buttons.bootstrap4.css 5KB
select.bootstrap4.css 5KB
select.bootstrap4.css 5KB
cropper.min.css 4KB
cropper.min.css 4KB
c3.css 3KB
c3.css 3KB
共 1220 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
沐知全栈开发
- 粉丝: 4814
- 资源: 4984
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功