diff --git a/pom.xml b/pom.xml index c470267..b2ced62 100644 --- a/pom.xml +++ b/pom.xml @@ -33,6 +33,8 @@ <scope>test</scope> </dependency> + + <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> @@ -56,13 +58,18 @@ <version>5.0.7</version> </dependency> +<!-- <dependency>--> +<!-- <groupId>com.github.pagehelper</groupId>--> +<!-- <artifactId>pagehelper</artifactId>--> +<!-- <version>5.3.2</version>--> +<!-- </dependency>--> + <dependency> <groupId>com.github.pagehelper</groupId> - <artifactId>pagehelper</artifactId> - <version>5.3.2</version> + <artifactId>pagehelper-spring-boot-starter</artifactId> + <version>1.4.6</version> </dependency> - <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> diff --git a/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java b/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java index 2de95b0..3dc326d 100644 --- a/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java +++ b/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java @@ -6,4 +6,5 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface DirectoryMapper extends BaseMapper<Directory> { + Integer selectByName(String dirName); } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/config/MybatisPlusConfig.java b/src/main/java/com/zhiyun/zhiyun03/course/config/MybatisPlusConfig.java deleted file mode 100644 index e5e1263..0000000 --- a/src/main/java/com/zhiyun/zhiyun03/course/config/MybatisPlusConfig.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.zhiyun.zhiyun03.course.config; - -import com.baomidou.mybatisplus.annotation.DbType; -import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; -import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration -public class MybatisPlusConfig { - // 从MyBatis-Plus 3.4.0开始,不再使用旧版本的PaginationInterceptor ,而是使用MybatisPlusInterceptor - @Bean - public MybatisPlusInterceptor mybatisPlusInterceptor() { - MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); - // 向MyBatis-Plus的过滤器链中添加分页拦截器,需要设置数据库类型(主要用于分页方言) - interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); - return interceptor; - } -} diff --git a/src/main/java/com/zhiyun/zhiyun03/course/controller/CourseController.java b/src/main/java/com/zhiyun/zhiyun03/course/controller/CourseController.java index e52020f..040e035 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/controller/CourseController.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/controller/CourseController.java @@ -1,6 +1,7 @@ package com.zhiyun.zhiyun03.course.controller; +import com.zhiyun.zhiyun03.application.entity.Directory; import com.zhiyun.zhiyun03.course.entity.Course; import com.zhiyun.zhiyun03.course.service.CourseService; @@ -11,6 +12,7 @@ import com.zhiyun.zhiyun03.utils.common.JsonResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -26,41 +28,48 @@ public class CourseController { private CourseService courseService; + @ApiOperation("查询课程") - @GetMapping("/selectAll") - public JsonResult<CourseVo> queryCourse(){ + @GetMapping("/queryCourse") + public JsonResult<PageVO<CourseVo>> queryCourse(@ApiParam @RequestParam(value = "page",required = false,defaultValue = "1")Integer page, + @ApiParam @RequestParam(value = "limit",required = false,defaultValue = "1")Integer limit ){ - List<CourseVo> lists = courseService.queryCourse(); + PageVO<CourseVo> lists = courseService.queryCourse(page,limit); return JsonResult.success(lists); } + @ApiOperation("根据ID查询课程") + @GetMapping("/queryCourseById") + public JsonResult<CourseVo> queryCourseById(Integer id){ + + CourseVo courseVo =courseService.queryCourseById(id); + + return JsonResult.success(courseVo); + } + + + @ApiOperation("课程添加") - @PostMapping("/add") - public JsonResult addCourse(Course course){ - courseService.addCourse(course); + @PostMapping("/addCourse") + public JsonResult addCourse(CourseVo courseVo){ + int count = courseService.addCourse(courseVo); + return JsonResult.success(); } -// -//// @ApiOperation("查询目录") -//// @PostMapping("/select") -//// public JsonResult selectDir(Directory directory){ -//// courseService.se(course); -//// return JsonResult.ok(); -//// } -// + @ApiOperation("删除课程") - @DeleteMapping("delById") + @DeleteMapping("delCourseById") public JsonResult delCourseById(Integer id){ courseService.delCourseById(id); return JsonResult.success(); } @ApiOperation("更新课程") - @PostMapping("update") - public JsonResult updateById(Course course){ - courseService.update(course); + @PostMapping("updateById") + public JsonResult updateById(CourseVo courseVo){ + int count = courseService.updateById(courseVo); return JsonResult.success(); } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/mapper/CourseMapper.java b/src/main/java/com/zhiyun/zhiyun03/course/mapper/CourseMapper.java index 2548fa2..03358bc 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/mapper/CourseMapper.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/mapper/CourseMapper.java @@ -2,6 +2,8 @@ package com.zhiyun.zhiyun03.course.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.zhiyun.zhiyun03.course.entity.Course; +import com.zhiyun.zhiyun03.course.vo.CourseVo; +import com.zhiyun.zhiyun03.course.vo.PageVO; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,5 +12,9 @@ import java.util.List; public interface CourseMapper extends BaseMapper<Course> { + List<CourseVo> queryCourse(); + CourseVo queryCourseById(Integer id); + + int updateCourseById(Course course); } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/service/CourseService.java b/src/main/java/com/zhiyun/zhiyun03/course/service/CourseService.java index ef858c1..bf40208 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/service/CourseService.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/service/CourseService.java @@ -16,12 +16,18 @@ public interface CourseService extends IService<Course> { // // void updateById(Course course); + /* + * 分页查询课程 + * */ + PageVO<CourseVo> queryCourse(Integer page, Integer limit ); - List<CourseVo> queryCourse(); - - void addCourse(Course course); + int addCourse(CourseVo courseVo); void delCourseById(Integer id); - void update(Course course); + int updateById(CourseVo courseVo); + /* + * 根据ID查询课程 + * */ + CourseVo queryCourseById(Integer id); } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/service/impl/CourseServiceImpl.java b/src/main/java/com/zhiyun/zhiyun03/course/service/impl/CourseServiceImpl.java index 77a1885..d78e89f 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/service/impl/CourseServiceImpl.java @@ -1,15 +1,17 @@ package com.zhiyun.zhiyun03.course.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.zhiyun.zhiyun03.application.entity.Directory; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper; -import com.zhiyun.zhiyun03.utils.convert.ConvertUtil; +import com.zhiyun.zhiyun03.course.vo.PageVO; import com.zhiyun.zhiyun03.course.entity.Course; import com.zhiyun.zhiyun03.course.service.CourseService; import com.zhiyun.zhiyun03.course.vo.CourseVo; import com.zhiyun.zhiyun03.course.mapper.CourseMapper; +import com.zhiyun.zhiyun03.utils.exception.ServiceException; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -24,33 +26,29 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper,Course> implemen @Resource private DirectoryMapper directoryMapper; - - /** - * 应用中心查询 + * 课程中心查询 */ @Override - public List<CourseVo> queryCourse() { - - QueryWrapper<Course> qwa=new QueryWrapper<>(); - List<Course> courses = courseMapper.selectList(qwa); - QueryWrapper<Directory> qwd=new QueryWrapper<>(); - List<Directory> directories = directoryMapper.selectList(qwd); - ConvertUtil convertUtil=new ConvertUtil(); - List<CourseVo> applicationVos = convertUtil.entityToVoList(courses, CourseVo.class); - - for (int i = 0; i < courses.size(); i++) { - for (int j = 0; j <directories.size() ; j++) { - //判断目录id是否相等 - if(courses.get(i).getDirId()==directories.get(j).getId()){ - //将目录名称添加到vo类中 - applicationVos.get(i).setDirName(directories.get(j).getDirName()); - } - } - } - return applicationVos; - - + public PageVO<CourseVo> queryCourse(Integer page, Integer limit) { + //开启分页 + PageHelper.startPage(page,limit); + //查询所有课程 + List<CourseVo> courseVoList = courseMapper.queryCourse(); + if (courseVoList.isEmpty()) + { + throw new ServiceException("400","课程数据为空"); + } + PageInfo<CourseVo> pageInfo = new PageInfo<CourseVo>(courseVoList); + PageVO<CourseVo> courseVoPageInfo = new PageVO<>(); + //当前页 + courseVoPageInfo.setCurrentPage(pageInfo.getPageNum()); + //总条数 + courseVoPageInfo.setTotal(pageInfo.getTotal()); + //分页数据 + courseVoPageInfo.setList(pageInfo.getList()); + + return courseVoPageInfo; } @@ -59,12 +57,29 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper,Course> implemen * 添加课程 */ @Override - public void addCourse(Course course) { + public int addCourse(CourseVo courseVo) { + + if (courseVo == null) + { + throw new ServiceException("400","课程添加失败"); + } + + Course course = new Course(); + + BeanUtils.copyProperties(courseVo,course); + + String dirName = courseVo.getDirName(); - courseMapper.insert(course); -// UpdateWrapper<Directory> updateWrapper = new UpdateWrapper<>(); -// updateWrapper.set("id",course.getDirId()); -// directoryMapper.update(null,updateWrapper); + Integer id = directoryMapper.selectByName(dirName); + course.setDirId(id); + + int count = courseMapper.insert(course); + System.out.println("count====="+count); + if (count<0) + { + throw new ServiceException("400","课程添加失败"); + } + return count; } @@ -81,16 +96,34 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper,Course> implemen * 课程更新 */ @Override - public void update(Course course) { - //变更数据进行更新 - UpdateWrapper<Course> updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("course_name",course.getCourseName()); - updateWrapper.set("course_brief",course.getCourseBrief()); - updateWrapper.set("course_url",course.getCourseUrl()); - updateWrapper.set("dir_id",course.getDirId()); - updateWrapper.set("course_icon",course.getCourseIcon()); - updateWrapper.eq("id",course.getId()); - courseMapper.update(null,updateWrapper); + public int updateById(CourseVo courseVo) { + Course course = new Course(); + BeanUtils.copyProperties(courseVo,course); + String dirName = courseVo.getDirName(); + Integer id = directoryMapper.selectByName(dirName); + course.setDirId(id); + + int count = courseMapper.updateCourseById(course); + if (count<0) + { + throw new ServiceException("400","课程更新失败"); + } + return count; + + } + + /** + * 根据ID查询课程 + */ + @Override + public CourseVo queryCourseById(Integer id) { + //根据id查找数据 + CourseVo courseVo = courseMapper.queryCourseById(id); + if (courseVo==null) + { + throw new ServiceException("401","课程不存在"); + } + return courseVo; } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/vo/CourseVo.java b/src/main/java/com/zhiyun/zhiyun03/course/vo/CourseVo.java index 804ee88..6ab9a15 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/vo/CourseVo.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/vo/CourseVo.java @@ -9,13 +9,14 @@ public class CourseVo { @TableId private int id; + //课程名 private String courseName; - + //课程简介 private String courseBrief; - + //课程链接 private String courseUrl; - + //归属目录 private String dirName; - + //课程图标 private String courseIcon; } diff --git a/src/main/java/com/zhiyun/zhiyun03/course/vo/PageVO.java b/src/main/java/com/zhiyun/zhiyun03/course/vo/PageVO.java index f37cbee..ae0ddb7 100644 --- a/src/main/java/com/zhiyun/zhiyun03/course/vo/PageVO.java +++ b/src/main/java/com/zhiyun/zhiyun03/course/vo/PageVO.java @@ -7,7 +7,10 @@ import java.util.List; @Data public class PageVO<T> { + //当前页 private Integer currentPage; + //总条数 private Long total; + //数据 private List<T> list; } diff --git a/src/main/java/com/zhiyun/zhiyun03/utils/config/GlobalCrossConfig.java b/src/main/java/com/zhiyun/zhiyun03/utils/config/GlobalCrossConfig.java new file mode 100644 index 0000000..f204a79 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/utils/config/GlobalCrossConfig.java @@ -0,0 +1,33 @@ +package com.zhiyun.zhiyun03.utils.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import org.springframework.web.filter.CorsFilter; + +@Configuration +public class GlobalCrossConfig { + @Bean + public CorsFilter corsFilter() { + //1. 添加 CORS配置信息 + CorsConfiguration config = new CorsConfiguration(); + //放行哪些原始域,*表示所有 + // config.addAllowedOrigin("*"); + // 注意:springboot2.4以上使用该方式 + config.addAllowedOriginPattern("*"); + //是否发送 Cookie + config.setAllowCredentials(true); + //放行哪些请求方式 + config.addAllowedMethod("*"); + //放行哪些原始请求头部信息 + config.addAllowedHeader("*"); + //暴露哪些头部信息 + config.addExposedHeader("*"); + //2. 添加映射路径 + UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource(); + corsConfigurationSource.registerCorsConfiguration("/**", config); + //3. 返回新的CorsFilter + return new CorsFilter(corsConfigurationSource); + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 5667f33..2a02a29 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -16,7 +16,7 @@ spring: druid: url: jdbc:mysql://localhost:3306/zhiyun?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai username: root - password: 123456 + password: root @@ -25,5 +25,15 @@ mybatis-plus: configuration: # 控制台打印日志 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + + + +pagehelper: + helper-dialect: mysql + reasonable: true + support-methods-arguments: true + + + swagger: enabled: true diff --git a/src/main/resources/mapper/CourseMapper.xml b/src/main/resources/mapper/CourseMapper.xml new file mode 100644 index 0000000..f2909f8 --- /dev/null +++ b/src/main/resources/mapper/CourseMapper.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > +<mapper namespace="com.zhiyun.zhiyun03.course.mapper.CourseMapper"> + + + <update id="updateCourseById"> + update course + <set > + <if test="courseName != null" > + course_name=#{courseName}, + </if> + <if test="courseUrl != null" > + course_url=#{courseUrl}, + </if> + <if test="courseBrief != null" > + course_brief=#{courseBrief}, + </if> + <if test="dirId != null" > + dir_id=#{dirId}, + </if> + <if test="courseIcon != null" > + course_icon=#{courseIcon} + </if> + </set> + <where> + <if test="id!=null"> + id = #{id} + </if> + </where> + </update> + + + <select id="queryCourse" resultType="com.zhiyun.zhiyun03.course.vo.CourseVo"> + select c.id,c.course_name,c.course_brief,c.course_url,d.dir_name,c.course_icon,c.course_addtime,c.course_updatetime + from course as c + inner join + (select * from directory) as d + on c.dir_id = d.id +-- where d.id=c.dir_id + </select> + + <select id="queryCourseById" resultType="com.zhiyun.zhiyun03.course.vo.CourseVo"> + select c.id,c.course_name,c.course_brief,c.course_url,d.dir_name,c.course_icon,c.course_addtime,c.course_updatetime + from course as c + inner join + (select * from directory) as d + on c.dir_id = d.id + where c.id =#{id} + </select> + +</mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/DirectoryMapper.xml b/src/main/resources/mapper/DirectoryMapper.xml index 8055e7d..d02639e 100644 --- a/src/main/resources/mapper/DirectoryMapper.xml +++ b/src/main/resources/mapper/DirectoryMapper.xml @@ -2,4 +2,7 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.zhiyun.zhiyun03.application.mapper.DirectoryMapper"> + <select id="selectByName" resultType="java.lang.Integer"> + select id from directory where dir_name =#{dirName} + </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/templates/layui-v2.6.8/courseList.html b/src/main/resources/templates/layui-v2.6.8/courseList.html index da6688c..a3b4daf 100644 --- a/src/main/resources/templates/layui-v2.6.8/courseList.html +++ b/src/main/resources/templates/layui-v2.6.8/courseList.html @@ -25,38 +25,100 @@ <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a> </script> +<!--<script src="layui/layui.js" charset="utf-8"></script>--> +<!--<!– 注意:如果你直接复制所有代码到本地,上述 JS 路径需要改成你本地的 –>--> +<!--<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>--> + + +<!--<script>--> +<!-- layui.use('table', function(){--> +<!-- var table = layui.table;--> + +<!-- //温馨提示:默认由前端自动合计当前行数据。从 layui 2.5.6 开始: 若接口直接返回了合计行数据,则优先读取接口合计行数据。--> +<!-- //详见:http://www.ilayuis.com/doc/modules/table.html#totalRow--> +<!-- table.render({--> +<!-- elem: '#test'--> +<!-- ,url:'http://localhost:8080/api/course/queryCourse'--> +<!-- ,toolbar: '#toolbarDemo'--> +<!-- ,title: '课程数据表'--> +<!-- ,totalRow: true--> +<!-- ,cols: [[--> +<!-- {type: 'checkbox', fixed: 'left'}--> +<!-- ,{field:'id', title:'编号', width:120, sort: true, }--> +<!-- ,{field:'courseName', title:'课程名称', width:120}--> +<!-- ,{field:'courseBrief', title:'课程简介', width:120}--> +<!-- ,{field:'courseUrl', title:'超链接', width:120}--> +<!-- ,{field:'dirName', title:'归属目录', width:120}--> +<!-- ,{field:'courseIcon', title:'课程图标', width:120}--> +<!-- ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}--> +<!-- ]]--> +<!-- ,page: true--> +<!-- });--> + +<!-- //工具栏事件--> +<!-- table.on('toolbar(test)', function(obj){--> +<!-- var checkStatus = table.checkStatus(obj.config.id);--> +<!-- switch(obj.event){--> +<!-- case 'getCheckData':--> +<!-- var data = checkStatus.data;--> +<!-- layer.alert(JSON.stringify(data));--> +<!-- break;--> +<!-- case 'getCheckLength':--> +<!-- var data = checkStatus.data;--> +<!-- layer.msg('选中了:'+ data.length + ' 个');--> +<!-- break;--> +<!-- case 'isAll':--> +<!-- layer.msg(checkStatus.isAll ? '全选': '未全选')--> +<!-- break;--> +<!-- };--> +<!-- });--> +<!-- });--> +<!--</script>--> + <script src="layui/layui.js" charset="utf-8"></script> <!-- 注意:如果你直接复制所有代码到本地,上述 JS 路径需要改成你本地的 --> -<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> +<!-- 引入jquery-3.5.1.min.js --> +<script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-3.5.1.min.js"></script> <script> layui.use('table', function(){ var table = layui.table; - //温馨提示:默认由前端自动合计当前行数据。从 layui 2.5.6 开始: 若接口直接返回了合计行数据,则优先读取接口合计行数据。 - //详见:http://www.ilayuis.com/doc/modules/table.html#totalRow table.render({ elem: '#test' - ,url:'http://localhost:8080/api/course/selectAll' - ,toolbar: '#toolbarDemo' + ,url:'http://localhost:8080/api/course/queryCourse'/*tpa=https://www.layuiweb.com/test/table/demo1.json*/ + ,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板 + ,defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可 + title: '提示' + ,layEvent: 'LAYTABLE_TIPS' + ,icon: 'layui-icon-tips' + }] ,title: '课程数据表' - ,totalRow: true ,cols: [[ - {type: 'checkbox', fixed: 'left'} + {type: 'checkbox', fixed: 'left'} ,{field:'id', title:'编号', width:120, sort: true, } ,{field:'courseName', title:'课程名称', width:120} ,{field:'courseBrief', title:'课程简介', width:120} ,{field:'courseUrl', title:'超链接', width:120} ,{field:'dirName', title:'归属目录', width:120} - // ,{field:'courseIcon', title:'编号', width:120} + ,{field:'courseIcon', title:'课程图标', width:120} ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150} ]] - ,page: true + ,page: { //支持传入 laypage 组件的所有参数(某些参数除外,如:jump/elem) - 详见文档 + //layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局 + layout: ['count', 'prev', 'page', 'next', 'skip'] //自定义分页布局 + ,curr: 1 //设定初始在第 1 页 + ,groups: 3 //只显示 3 个连续页码 + ,first:"首页" //显示首页 + ,last:"尾页" //显示尾页 + ,limit: 2 //每页显示两条数据(和后端保持一致) + //,limits: [1,3,5] + } }); - //工具栏事件 + //头工具栏事件 table.on('toolbar(test)', function(obj){ var checkStatus = table.checkStatus(obj.config.id); switch(obj.event){ @@ -69,10 +131,53 @@ layer.msg('选中了:'+ data.length + ' 个'); break; case 'isAll': - layer.msg(checkStatus.isAll ? '全选': '未全选') + layer.msg(checkStatus.isAll ? '全选': '未全选'); + break; + + //自定义头工具栏右侧图标 - 提示 + case 'LAYTABLE_TIPS': + layer.alert('这是工具栏右侧自定义的一个图标按钮'); break; }; }); + + //监听行工具事件 + table.on('tool(test)', function(obj){ + var data = obj.data; + //console.log(obj) + if(obj.event === 'del'){ + layer.confirm('真的删除行么', function(index){ + //obj.del();//删除表结构 + layer.close(index); + + //获取要删除的歌曲的id + var deleteMusicId = data.musicId; + + //发送Ajax到后台,进行删除操作 + $.get("music/after/delete.do", { "musicId": deleteMusicId}, + function(data){ + if("success" == data){ + location.reload();//重新加载当前页面 + } + }); + + + }); + } else if(obj.event === 'edit'){ + // layer.prompt({ + // formType: 2 + // ,value: data.email + // }, function(value, index){ + // obj.update({ + // email: value + // }); + // layer.close(index); + // }); + + //layer.alert(JSON.stringify(data)); + selectOne(data); + } + }); }); </script> diff --git a/src/main/resources/templates/layui-v2.6.8/index.html b/src/main/resources/templates/layui-v2.6.8/index.html index 5128b87..fc35088 100644 --- a/src/main/resources/templates/layui-v2.6.8/index.html +++ b/src/main/resources/templates/layui-v2.6.8/index.html @@ -54,7 +54,7 @@ <!-- 左侧导航区域(可配合layui已有的垂直导航) --> <ul class="layui-nav layui-nav-tree" lay-filter="test"> <li class="layui-nav-item layui-nav-itemed"> - <a class="" href="javascript:;" onclick="openUrl('courseList.html')">课程中心</a> + <a class="" href="javascript:;" onclick="openUrl('courseList1.html')">课程中心</a> </li> <li class="layui-nav-item"> <a href="javascript:;">应用中心</a>