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 com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
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.JiaocaiEntity;
import com.entity.view.JiaocaiView;
import com.service.JiaocaiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;
import java.io.InputStream;
import org.springframework.web.multipart.MultipartFile;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
/**
* 教材
* 后端接口
* @author
* @email
* @date 2022-04-30 17:40:37
*/
@RestController
@RequestMapping("/jiaocai")
public class JiaocaiController {
@Autowired
private JiaocaiService jiaocaiService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,JiaocaiEntity jiaocai,
HttpServletRequest request){
EntityWrapper<JiaocaiEntity> ew = new EntityWrapper<JiaocaiEntity>();
PageUtils page = jiaocaiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaocai), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,JiaocaiEntity jiaocai,
HttpServletRequest request){
EntityWrapper<JiaocaiEntity> ew = new EntityWrapper<JiaocaiEntity>();
PageUtils page = jiaocaiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaocai), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( JiaocaiEntity jiaocai){
EntityWrapper<JiaocaiEntity> ew = new EntityWrapper<JiaocaiEntity>();
ew.allEq(MPUtil.allEQMapPre( jiaocai, "jiaocai"));
return R.ok().put("data", jiaocaiService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(JiaocaiEntity jiaocai){
EntityWrapper< JiaocaiEntity> ew = new EntityWrapper< JiaocaiEntity>();
ew.allEq(MPUtil.allEQMapPre( jiaocai, "jiaocai"));
JiaocaiView jiaocaiView = jiaocaiService.selectView(ew);
return R.ok("查询教材成功").put("data", jiaocaiView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
JiaocaiEntity jiaocai = jiaocaiService.selectById(id);
return R.ok().put("data", jiaocai);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
JiaocaiEntity jiaocai = jiaocaiService.selectById(id);
return R.ok().put("data", jiaocai);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody JiaocaiEntity jiaocai, HttpServletRequest request){
jiaocai.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(jiaocai);
jiaocaiService.insert(jiaocai);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody JiaocaiEntity jiaocai, HttpServletRequest request){
jiaocai.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(jiaocai);
jiaocaiService.insert(jiaocai);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
@Transactional
public R update(@RequestBody JiaocaiEntity jiaocai, HttpServletRequest request){
//ValidatorUtils.validateEntity(jiaocai);
jiaocaiService.updateById(jiaocai);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
jiaocaiService.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.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<JiaocaiEntity> wrapper = new EntityWrapper<JiaocaiEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
int count = jiaocaiService.selectCount(wrapper);
return R.ok().put("count", count);
}
@RequestMapping("/importExcel")
public R importExcel(@RequestParam("file") MultipartFile file){
try {
//获取输入流
InputStream inputStream = file.getInputStream();
//创建读取工作簿
Workbook workbook = WorkbookFactory.create(inputStream);
//获取工作表
Sheet sheet = workbook.getSheetAt(0);
//获取总行
int rows=sheet.getPhysicalNumberOfRows();
if(rows>1){
//获取单元格
for (int i = 1; i < rows; i++) {
Row row = sheet.getRow(i);
JiaocaiEntity jiaocaiEntity =new JiaocaiEntity();
jiaocaiEntity.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
String jiaocaibianhao = CommonUtil.getCellValue(row.getCell(0));
jiaocaiEntity.setJiaocaibianhao(jiaocaibianhao);
String jiaocaimingcheng = CommonUtil.getCellValue(row.getCell(1));
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订系统源码基于SSM的教材征订
资源推荐
资源详情
资源评论
收起资源包目录
基于SSM的教材征订系统源码 (916个子文件)
styles.css.bak 23KB
index.jsp.bak 4KB
setMenu.js.bak 3KB
topNav.jsp.bak 1KB
.classpath 1KB
org.eclipse.wst.common.component 689B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.min.css 141KB
bootstrap.css 120KB
style.css 66KB
ueditor.css 44KB
styles.css 41KB
ueditor.min.css 34KB
font-awesome.min.css 30KB
jquery.treetable.theme.default.css 25KB
animate.css 23KB
entypo-icon.css 23KB
all.css 21KB
font-awesome.css 21KB
video-js.css 21KB
image.css 19KB
jquery.idealforms.css 17KB
themify-icons.css 16KB
video.css 15KB
attachment.css 15KB
square.min.css 14KB
all.css 13KB
dropzone.css 11KB
video-js.min.css 11KB
bootstrap-switch.css 11KB
bootstrap-datetimepicker.min.css 11KB
extra-pages.css 11KB
ladda.min.css 10KB
tooltipster.css 9KB
calendar.css 9KB
responsive.css 8KB
shCoreDefault.css 7KB
social.css 7KB
jquery-jvectormap.css 6KB
clockface.css 6KB
jquery.steps.css 6KB
dripicon.css 5KB
weather-icons.min.css 5KB
footable.core.css 5KB
dataTables.bootstrap4.min.css 5KB
datepicker.css 5KB
tabelizer.min.css 5KB
datepicker.css 5KB
datepicker.css 5KB
footable.standalone.css 5KB
signin.css 5KB
media.css 5KB
slidebars.css 4KB
skin-select.css 4KB
datepicker.css 4KB
scrawl.css 4KB
DT_bootstrap.css 4KB
datepicker.css 4KB
bootstrap-timepicker.css 3KB
green.css 3KB
yellow.css 3KB
red.css 3KB
blue.css 3KB
violet.css 3KB
codemirror.css 3KB
bootstrap-colorpicker.css 3KB
maki-icons.css 3KB
jquery.treeview.css 3KB
profile.css 3KB
charts.css 3KB
background.css 2KB
bootstrap-wysihtml5.css 2KB
awwwards.css 2KB
jquery.stepy.css 2KB
responsive-table.css 2KB
emotion.css 2KB
dialogbase.css 2KB
jquery.pnotify.default.css 2KB
music.css 2KB
demo.css 1KB
acc-wizard.min.css 1KB
jquery.easy-pie-chart.css 1KB
pace-theme-center-simple.css 1KB
uploader.css 1KB
edittable.css 1KB
editor.css 1KB
template.css 1KB
jquery.tagsinput.css 992B
mail.css 840B
number-pb.css 737B
jquery.treetable.css 652B
datatables.responsive.css 618B
validate.css 581B
open-sans.css 567B
stacktable.css 565B
webuploader.css 515B
icons-style.css 490B
loader-style.css 483B
footable-demos.css 440B
morris.css 433B
共 916 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
老了敲不动了
- 粉丝: 83
- 资源: 4289
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功