package com.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;
import com.entity.KehuEntity;
import com.entity.view.KehuView;
import com.service.KehuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
/**
* 客户
* 后端接口
* @author
* @email
* @date 2022-03-03 21:32:45
*/
@RestController
@RequestMapping("/kehu")
public class KehuController {
@Autowired
private KehuService kehuService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
KehuEntity user = kehuService.selectOne(new EntityWrapper<KehuEntity>().eq("kehumingcheng", username));
if(user==null || !user.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(), username,"kehu", "客户" );
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody KehuEntity kehu){
//ValidatorUtils.validateEntity(kehu);
KehuEntity user = kehuService.selectOne(new EntityWrapper<KehuEntity>().eq("kehumingcheng", kehu.getKehumingcheng()));
if(user!=null) {
return R.error("注册用户已存在");
}
Long uId = new Date().getTime();
kehu.setId(uId);
kehuService.insert(kehu);
return R.ok();
}
/**
* 退出
*/
@RequestMapping("/logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 获取用户的session用户信息
*/
@RequestMapping("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
KehuEntity user = kehuService.selectById(id);
return R.ok().put("data", user);
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
KehuEntity user = kehuService.selectOne(new EntityWrapper<KehuEntity>().eq("kehumingcheng", username));
if(user==null) {
return R.error("账号不存在");
}
user.setMima("123456");
kehuService.updateById(user);
return R.ok("密码已重置为:123456");
}
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,KehuEntity kehu,
HttpServletRequest request){
EntityWrapper<KehuEntity> ew = new EntityWrapper<KehuEntity>();
PageUtils page = kehuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, kehu), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,KehuEntity kehu,
HttpServletRequest request){
EntityWrapper<KehuEntity> ew = new EntityWrapper<KehuEntity>();
PageUtils page = kehuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, kehu), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( KehuEntity kehu){
EntityWrapper<KehuEntity> ew = new EntityWrapper<KehuEntity>();
ew.allEq(MPUtil.allEQMapPre( kehu, "kehu"));
return R.ok().put("data", kehuService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(KehuEntity kehu){
EntityWrapper< KehuEntity> ew = new EntityWrapper< KehuEntity>();
ew.allEq(MPUtil.allEQMapPre( kehu, "kehu"));
KehuView kehuView = kehuService.selectView(ew);
return R.ok("查询客户成功").put("data", kehuView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
KehuEntity kehu = kehuService.selectById(id);
return R.ok().put("data", kehu);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
KehuEntity kehu = kehuService.selectById(id);
return R.ok().put("data", kehu);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody KehuEntity kehu, HttpServletRequest request){
kehu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(kehu);
KehuEntity user = kehuService.selectOne(new EntityWrapper<KehuEntity>().eq("kehumingcheng", kehu.getKehumingcheng()));
if(user!=null) {
return R.error("用户已存在");
}
kehu.setId(new Date().getTime());
kehuService.insert(kehu);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody KehuEntity kehu, HttpServletRequest request){
kehu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(kehu);
KehuEntity user = kehuService.selectOne(new EntityWrapper<KehuEntity>().eq("kehumingcheng", kehu.getKehumingcheng()));
if(user!=null) {
return R.error("用户已存在");
}
kehu.setId(new Date().getTime());
kehuService.insert(kehu);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody KehuEntity kehu, HttpServletRequest request){
//ValidatorUtils.validateEntity(kehu);
kehuService.updateById(kehu);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
kehuService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
将系统权限按管理员、仓储部门、供应部门、业务部门、客户和财务部这六类涉及用户划分。 (a) 管理员;管理员使用本系统涉到的功能主要有首页、个人中心、药品信息管理、仓储部门管理、供应部门管理、业务部门管理、客户管理、财务部管理、采购订单管理、药品入库管理、药品出库管理、过期药品管理、销售订单管理、客户订单管理、退货订单管理等功能。 (b) 仓储部门;仓储部门使用本系统涉到的功能主要有首页、个人中心、药品信息管理、药品入库管理、过期药品管理等功能。 (c) 业务部门;业务部门使用本系统涉到的功能主要有首页、个人中心、采购订单管理、销售订单管理等功能。 (d) 供应部门;供应部门使用本系统涉到的功能主要有首页、个人中心、药品信息管理、药品出库管理、销售订单管理等功能。 (e) 财务部;财务部使用本系统涉到的功能主要有首页、个人中心、药品出库管理、客户订单管理、退货订单管理等功能。 (f) 客户;客户使用本系统涉到的功能主要有首页、个人中心、客户订单管理、退货订单管理等功能。 将系统权限按管理员、仓储部门、供应部门、业务部门、客户和财务部这六类涉及用户划分。 (a) 管理员;管理员使用本系
资源推荐
资源详情
资源评论
收起资源包目录
基于SSM的医药进出口交易系统源码 (475个子文件)
update-password.vue.bak 3KB
IndexMain.vue.bak 2KB
IndexAsideStatic.vue.bak 2KB
BreadCrumbs.vue.bak 2KB
IndexHeader.vue.bak 2KB
3-build.bat 15B
2-run.bat 14B
1-install.bat 12B
.classpath 1KB
org.eclipse.wst.common.component 689B
org.eclipse.wst.jsdt.ui.superType.container 49B
app.7fde15e5.css 269KB
bootstrap.css 143KB
bootstrap.min.css 118KB
chunk-vendors.a72b0961.css 37KB
canvas-bg-1.css 391B
canvas-bg-2.css 83B
canvas-bg-3.css 61B
glyphicons-halflings-regular.eot 20KB
.gitignore 10B
index.html 924B
index.html 552B
favicon.ico 4KB
favicon.ico 4KB
KehuController.java 11KB
GongyingbumenController.java 9KB
CangchubumenController.java 9KB
CommonController.java 9KB
YewubumenController.java 9KB
CaiwubuController.java 9KB
TuihuodingdanController.java 7KB
KehudingdanController.java 7KB
XiaoshoudingdanController.java 7KB
TuihuodingdanEntity.java 7KB
CaigoudingdanController.java 7KB
YaopinchukuController.java 7KB
GuoqiyaopinController.java 7KB
YaopinxinxiController.java 7KB
YaopinrukuController.java 6KB
KehudingdanEntity.java 6KB
YaopinxinxiEntity.java 6KB
YaopinchukuEntity.java 6KB
XiaoshoudingdanEntity.java 6KB
TuihuodingdanModel.java 6KB
TuihuodingdanVO.java 5KB
UserController.java 5KB
MPUtil.java 5KB
KehudingdanModel.java 5KB
KehudingdanVO.java 5KB
YaopinxinxiModel.java 5KB
YaopinchukuModel.java 5KB
YaopinxinxiVO.java 5KB
GuoqiyaopinEntity.java 5KB
YaopinrukuEntity.java 5KB
XiaoshoudingdanModel.java 5KB
YaopinchukuVO.java 5KB
XiaoshoudingdanVO.java 5KB
CaigoudingdanEntity.java 5KB
BaiduUtil.java 4KB
KehuEntity.java 4KB
GuoqiyaopinModel.java 3KB
YaopinrukuModel.java 3KB
GongyingbumenEntity.java 3KB
CangchubumenEntity.java 3KB
YewubumenEntity.java 3KB
CaiwubuEntity.java 3KB
GuoqiyaopinVO.java 3KB
YaopinrukuVO.java 3KB
CaigoudingdanModel.java 3KB
CaigoudingdanVO.java 3KB
FileController.java 3KB
ConfigController.java 3KB
AuthorizationInterceptor.java 3KB
Query.java 3KB
TokenServiceImpl.java 2KB
KehuModel.java 2KB
KehuServiceImpl.java 2KB
KehuVO.java 2KB
CommonUtil.java 2KB
GongyingbumenModel.java 2KB
CangchubumenModel.java 2KB
TokenEntity.java 2KB
YewubumenModel.java 2KB
CaiwubuModel.java 2KB
GongyingbumenVO.java 2KB
CangchubumenVO.java 2KB
YewubumenVO.java 2KB
CaiwubuVO.java 2KB
XiaoshoudingdanServiceImpl.java 2KB
TuihuodingdanServiceImpl.java 2KB
CaigoudingdanServiceImpl.java 2KB
GongyingbumenServiceImpl.java 2KB
CangchubumenServiceImpl.java 2KB
PageUtils.java 2KB
GuoqiyaopinServiceImpl.java 2KB
YaopinchukuServiceImpl.java 2KB
YaopinxinxiServiceImpl.java 2KB
KehudingdanServiceImpl.java 2KB
YaopinrukuServiceImpl.java 2KB
YewubumenServiceImpl.java 2KB
共 475 条
- 1
- 2
- 3
- 4
- 5
资源评论
- m0_751127842024-04-23总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
老了敲不动了
- 粉丝: 86
- 资源: 4618
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 考研冲刺的实用经验与技巧.pptx
- golang语法和学习笔记
- YOLO 格式的带标签的口罩/不戴口罩的面部和人群图像
- 全国2000+个气象站点日尺度资料-【1961-2022年】-平均气温+最高气温+最低气温+降水
- 带有边界框的农作物和杂草检测数据 带有 YOLO 和 Pascal 标签的芝麻作物和不同杂草的农业数据
- 练习 JavaScript 的禅宗练习.zip
- 大学生Java二级课程考试
- Nvidia GeForce GT 1030-GeForce Game Ready For Win10&Win11(Win10&Win11 GeForce GT 1030显卡驱动)
- IEC61850仿真模拟器sim860
- 纯 Python Java 解析器和工具.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功