package com.controller;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.entity.*;
import com.util.ExcelUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
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.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import com.service.AdminService;
import com.service.GoodService;
import com.service.OrderService;
import com.service.TopService;
import com.service.TypeService;
import com.service.UserService;
import com.util.PageUtil;
import com.util.UploadUtil;
/**
* 后台管理接口
*/
@Controller
@RequestMapping("/admin")
public class AdminController {
@Autowired
private AdminService adminService;
@Autowired
private OrderService orderService;
@Autowired
private UserService userService;
@Autowired
private GoodService goodService;
@Autowired
private TopService topService;
@Autowired
private TypeService typeService;
/**
* 管理员登录 (逻辑判断)
* @return
*/
@GetMapping("/login")
public String log() {
return "/admin/login.jsp";
}
/**
* 管理员登录
* @return
*/
@PostMapping("/login")
public String login(String username, String password,
HttpServletRequest request, HttpSession session) {
Admins admin = adminService.getByUsernameAndPassword(username, password);
if (Objects.nonNull(admin)) {
session.setAttribute("admin", admin);
return "redirect:index";
}
request.setAttribute("msg", "用户名或密码错误!");
return "/admin/login.jsp";
}
/**
* 退出
* @return
*/
@GetMapping("/logout")
public String logout(HttpSession session) {
session.removeAttribute("admin");
return "/admin/login.jsp";
}
/**
* 后台首页
* @return
*/
@GetMapping("/index")
public String index(HttpServletRequest request) {
request.setAttribute("msg", "恭喜你! 登录成功了");
return "/admin/index.jsp";
}
/**
* 类目列表
* @return
*/
@GetMapping("/typeList")
public String typeList(HttpServletRequest request) {
request.setAttribute("flag", 1);
request.setAttribute("typeList", typeService.getList());
return "/admin/type_list.jsp";
}
/**
* 类目添加
* @return
*/
@GetMapping("/typeAdd")
public String typeAdd(HttpServletRequest request) {
request.setAttribute("flag", 1);
return "/admin/type_add.jsp";
}
/**
* 类目添加
* @return
* @throws Exception
*/
@PostMapping("/typeSave")
public String typeSave(Types type) throws Exception {
typeService.add(type);
return "redirect:typeList?flag=1";
}
/**
* 类目更新
* @return
*/
@GetMapping("/typeEdit")
public String typeEdit(int id, HttpServletRequest request) {
request.setAttribute("flag", 1);
request.setAttribute("type", typeService.get(id));
return "/admin/type_edit.jsp";
}
/**
* 类目更新
* @return
* @throws Exception
*/
@PostMapping("/typeUpdate")
public String typeUpdate(Types type) throws Exception {
typeService.update(type);
return "redirect:typeList?flag=1";
}
/**
* 类目删除
* @return
*/
@GetMapping("/typeDelete")
public String typeDelete(int id) {
typeService.delete(id);
return "redirect:typeList?flag=1";
}
/**
* 产品列表
* @return
*/
@GetMapping("/goodList")
public String goodList(HttpServletRequest request,
@RequestParam(required=false, defaultValue="0") byte type,
@RequestParam(required=false, defaultValue="1") int page,
@RequestParam(required=false, defaultValue="10") int size) {
request.setAttribute("flag", 2);
request.setAttribute("page", page);
request.setAttribute("type", type);
if(type > 0) {
String goodIds = topService.getGoodIdsByType(type);
request.setAttribute("goodList", goodService.getListByIds(goodIds, page, size));
request.setAttribute("pageTool", PageUtil.getPageTool(request, goodService.getCountByIds(goodIds), page, size));
}else {
request.setAttribute("goodList", goodService.getList(page, size));
request.setAttribute("pageTool", PageUtil.getPageTool(request, goodService.getCount(), page, size));
}
return "/admin/good_list.jsp";
}
/**
* 产品添加
* @return
*/
@GetMapping("/goodAdd")
public String goodAdd(HttpServletRequest request) {
request.setAttribute("flag", 2);
request.setAttribute("typeList", typeService.getList());
return "/admin/good_add.jsp";
}
/**
* 产品添加
* @return
* @throws Exception
*/
@PostMapping("/goodSave")
public String goodSave(Goods good, MultipartFile file,
@RequestParam(required=false, defaultValue="1") int page) throws Exception {
good.setCover(UploadUtil.upload(file));
goodService.add(good);
return "redirect:goodList?flag=2&page="+page;
}
/**
* 产品更新
* @return
*/
@GetMapping("/goodEdit")
public String goodEdit(int id, HttpServletRequest request) {
request.setAttribute("flag", 2);
request.setAttribute("typeList", typeService.getList());
request.setAttribute("good", goodService.get(id));
return "/admin/good_edit.jsp";
}
/**
* 产品更新
* @return
* @throws Exception
*/
@PostMapping("/goodUpdate")
public String goodUpdate(Goods good, MultipartFile file,
@RequestParam(required=false, defaultValue="1") int page) throws Exception {
if (Objects.nonNull(file) && !file.isEmpty()) {
good.setCover(UploadUtil.upload(file));
}
goodService.update(good);
return "redirect:goodList?flag=2&page="+page;
}
/**
* 产品删除
* @return
*/
@GetMapping("/goodDelete")
public String goodDelete(int id,
@RequestParam(required=false, defaultValue="1") int page) {
goodService.delete(id);
return "redirect:goodList?flag=2&page="+page;
}
/**
* 添加推荐
* @return
*/
@PostMapping("/topSave")
public @ResponseBody String topSave(int goodId, byte type) {
return topService.add(goodId, type) ? "ok" : null;
}
/**
* 删除推荐
* @return
*/
@PostMapping("/topDelete")
public @ResponseBody String topDelete(int goodId, byte type) {
return topService.delete(goodId, type) ? "ok" : null;
}
/**
* 订单列表
* @return
*/
@GetMapping("/orderList")
public String orderList(HttpServletRequest request,
@RequestParam(required=false, defaultValue="0")byte status,
@RequestParam(required=false, defaultValue="1") int page,
@RequestParam(required=false, defaultValue="10") int size) {
request.setAttribute("flag", 3);
request.setAttribute("status", status);
request.setAttribute("orderList", orderService.getList(status, page, size));
request.setAttribute("pageTool", PageUtil.getPageTool(request, orderService.getCount(status), page, size));
return "/admin/order_list.jsp";
}
/**
* 订单发货
* @return
*/
@GetMapping("/orderSend")
public String orderSend(int id, byte status,
@RequestParam(required=false, defaultValue="1") int page) {
orderService.send(id);
return "redirect:orderList?flag=3&status="+status+"&page="+page;
}
/**
* 订单完成
* @return
*/
@GetMapping("/orderFinish")
public String orderFinish(int id, byte status,
@RequestParam(required=false, defaultValue="1") int page) {
orderService.finish(id);
return "redirect:orderList?flag=3&status="+status+"&page="+page;
}
/**
* 订单删除
* @return
*/
@GetMapping("/orderDelete")
public String orderDelete(int id, byte status,
@RequestParam(required=false, defaultValue="1") int page) {
orderService.delete(id);
return "redirect:orderList?flag=3&status="+status+"&page="+page;
}
/**
* 顾客管理
* @return
*/
@GetMapping("/userList")
public String userList(HttpServletRequest request,
@RequestParam(required=false, defaultValue="1") int page,
@RequestParam(required=false, defaul
没有合适的资源?快使用搜索试试~ 我知道了~
java网上药店销售管理系统
共876个文件
gif:310个
png:127个
js:78个
需积分: 2 4 下载量 99 浏览量
2023-07-25
10:13:35
上传
评论 2
收藏 46.6MB ZIP 举报
温馨提示
网上药店销售管理系统是一个用于管理和操作网上药店销售业务的软件系统。它通常包含以下功能: 用户管理:包括注册、登录、个人信息管理等功能,用户可以通过系统进行账户管理和权限设置。 商品管理:包括药品库存管理、药品分类、商品上架、下架等功能,用户可以对药品进行管理和操作。 订单管理:包括订单生成、订单查询、订单处理、订单退款等功能,用户可以查看和处理客户提交的订单。 财务管理:包括财务报表、收支统计、财务分析等功能,用户可以了解药店销售的财务状况。 客户管理:包括客户信息管理、客户评价管理、客户反馈管理等功能,用户可以对客户进行管理和维护。 物流管理:包括物流配送、运输跟踪、快递查询等功能,用户可以跟踪和管理商品的物流信息。 数据分析:包括销售数据分析、市场趋势预测、客户行为分析等功能,用户可以利用系统提供的数据分析工具进行业务决策。 这些功能可以根据具体的需求进行扩展和定制,以满足不同网上药店的销售管理需求。同时,为了确保系统的安全性和稳定性,通常还会包括用户权限管理、数据备份与恢复、系统日志记录等辅助功能。
资源推荐
资源详情
资源评论
收起资源包目录
java网上药店销售管理系统 (876个子文件)
$PRODUCT_WORKSPACE_FILE$ 489B
AdminController.class 16KB
UserController.class 10KB
OrderService.class 7KB
ExcelUtils.class 5KB
IndexController.class 5KB
PageUtil.class 5KB
GoodService.class 5KB
Orders.class 4KB
GoodsDao.class 4KB
CartService.class 3KB
Goods.class 3KB
IndexInterceptor.class 2KB
UserService.class 2KB
OrdersDao.class 2KB
UploadUtil.class 2KB
MyRequest.class 2KB
AdminService.class 2KB
Users.class 2KB
UsersDao.class 2KB
CartDao.class 2KB
TopService.class 2KB
AdminsDao.class 2KB
Items.class 2KB
AdminInterceptor.class 2KB
GenericEncodingFilter.class 2KB
Carts.class 1KB
TopsDao.class 1KB
ExceptionConfig.class 1KB
SafeUtil.class 1KB
Admins.class 1KB
TypeService.class 1KB
Types.class 1KB
TypesDao.class 987B
Tops.class 889B
ItemsDao.class 735B
ExceptionConfig$MyException.class 452B
org.eclipse.wst.common.component 483B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.css 120KB
bootstrap.css 120KB
bootstrap.css 120KB
bootstrap.css 120KB
index.css 50KB
index.css 50KB
font.css 32KB
font.css 32KB
details.css 21KB
details.css 21KB
default.css 20KB
default.css 20KB
swiper.css 17KB
swiper.css 17KB
cart.css 16KB
cart.css 16KB
reclassify.css 15KB
reclassify.css 15KB
layer.css 14KB
layer.css 14KB
pay.css 11KB
pay.css 11KB
logon.css 10KB
logon.css 10KB
order.css 6KB
order.css 6KB
search.css 5KB
search.css 5KB
address.css 3KB
address.css 3KB
newpro.css 3KB
newpro.css 3KB
qq.css 3KB
qq.css 3KB
simple.css 2KB
simple.css 2KB
optimize.css 2KB
optimize.css 2KB
public.css 1KB
public.css 1KB
prettify.css 960B
prettify.css 960B
common.css 953B
common.css 953B
login.css 500B
login.css 500B
emall_ssm_mysql.eml 449B
static.gif 35KB
static.gif 35KB
35.gif 13KB
35.gif 13KB
42.gif 13KB
42.gif 13KB
40.gif 10KB
40.gif 10KB
18.gif 8KB
18.gif 8KB
19.gif 8KB
19.gif 8KB
11.gif 8KB
11.gif 8KB
共 876 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
童小纯
- 粉丝: 3w+
- 资源: 289
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功