课程实操管理-建表

beetlsql3-dev
xuliangtong 3 years ago
parent 753ab73b9c
commit 713c8751b0

@ -35,3 +35,14 @@ CREATE TABLE `sys_log_text` (
PRIMARY KEY (`id`) USING BTREE,
INDEX `sys_id`(`sys_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
DROP TABLE IF EXISTS `hands_on`;
CREATE TABLE `hands_on` (
`hands_on_id` bigint NOT NULL COMMENT '实操主键',
`course_info_id` bigint NULL DEFAULT NULL COMMENT '归属课程',
`course_child_node` varchar(255) CHARACTER SET utf8mb4 NULL DEFAULT NULL COMMENT '归属章节',
`hands_on_name` varchar(255) CHARACTER SET utf8mb4 NULL DEFAULT NULL COMMENT '实操名称',
`hands_on_recommend` longtext CHARACTER SET utf8mb4 NULL COMMENT '实操介绍',
PRIMARY KEY (`hands_on_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COMMENT = '课程实操';

@ -0,0 +1,27 @@
package com.ibeetl.jlw.dao;
import java.util.List;
import java.util.Map;
import com.ibeetl.jlw.entity.*;
import com.ibeetl.jlw.web.query.HandsOnQuery;
import org.beetl.sql.mapper.annotation.SqlResource;
import org.beetl.sql.mapper.BaseMapper;
import org.beetl.sql.core.engine.PageQuery;
import org.beetl.sql.mapper.annotation.Update;
/**
* HandsOn Dao
*/
@SqlResource("jlw.handsOn")
public interface HandsOnDao extends BaseMapper<HandsOn>{
PageQuery<HandsOn> queryByCondition(PageQuery query);
PageQuery<HandsOn> queryByConditionQuery(PageQuery query);
@Update
void deleteHandsOnByIds(String ids);
@Update
int updateGivenByIds(HandsOnQuery handsOnQuery);
List<HandsOn> getByIds(String ids);
List<HandsOn> getValuesByQuery(HandsOnQuery handsOnQuery);
}

@ -0,0 +1,113 @@
package com.ibeetl.jlw.entity;
import javax.validation.constraints.NotNull;
import com.ibeetl.admin.core.entity.BaseEntity;
import org.beetl.sql.annotation.entity.*;
import com.ibeetl.admin.core.util.ValidateConfig;
import com.ibeetl.admin.core.annotation.Dict;
import java.math.BigDecimal;
import java.util.Date;
/*
*
* gen by Spring Boot2 Admin 2022-09-22
*/
public class HandsOn extends BaseEntity{
//实操主键
@NotNull(message = "ID不能为空", groups =ValidateConfig.UPDATE.class)
// @SeqID(name = ORACLE_CORE_SEQ_NAME)
@AssignID(value = "maskAutoID",param = "com.ibeetl.jlw.entity.HandsOn")
private Long handsOnId ;
//归属课程
private Long courseInfoId ;
//归属章节
private String courseChildNode ;
//实操名称
private String handsOnName ;
//实操介绍
private String handsOnRecommend ;
public HandsOn(){
}
/**
*@return
*/
public Long getHandsOnId(){
return handsOnId;
}
/**
*@param handsOnId
*/
public void setHandsOnId(Long handsOnId){
this.handsOnId = handsOnId;
}
/**
*@return
*/
public Long getCourseInfoId(){
return courseInfoId;
}
/**
*@param courseInfoId
*/
public void setCourseInfoId(Long courseInfoId){
this.courseInfoId = courseInfoId;
}
/**
*@return
*/
public String getCourseChildNode(){
return courseChildNode;
}
/**
*@param courseChildNode
*/
public void setCourseChildNode(String courseChildNode){
this.courseChildNode = courseChildNode;
}
/**
*@return
*/
public String getHandsOnName(){
return handsOnName;
}
/**
*@param handsOnName
*/
public void setHandsOnName(String handsOnName){
this.handsOnName = handsOnName;
}
/**
*@return
*/
public String getHandsOnRecommend(){
return handsOnRecommend;
}
/**
*@param handsOnRecommend
*/
public void setHandsOnRecommend(String handsOnRecommend){
this.handsOnRecommend = handsOnRecommend;
}
}

@ -0,0 +1,161 @@
package com.ibeetl.jlw.service;
import java.io.*;
import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.math.BigDecimal;
import cn.jlw.util.ToolUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.ibeetl.admin.core.entity.CoreUser;
import com.ibeetl.admin.core.util.TimeTool;
import com.ibeetl.admin.core.web.JsonResult;
import com.ibeetl.admin.core.web.JsonReturnCode;
import com.ibeetl.jlw.dao.HandsOnDao;
import com.ibeetl.jlw.entity.HandsOn;
import com.ibeetl.jlw.web.query.HandsOnQuery;
import com.ibeetl.jlw.entity.FileEntity;
import com.ibeetl.admin.core.service.CoreBaseService;
import com.ibeetl.admin.core.util.PlatformException;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
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.xssf.usermodel.XSSFWorkbook;
import org.beetl.sql.core.engine.PageQuery;
import org.beetl.sql.core.SqlId;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
/**
* HandsOn Service
* ID使insert(*,true)
*/
@Service
@Transactional
public class HandsOnService extends CoreBaseService<HandsOn>{
@Resource private HandsOnDao handsOnDao;
public PageQuery<HandsOn>queryByCondition(PageQuery query){
PageQuery ret = handsOnDao.queryByCondition(query);
queryListAfter(ret.getList());
return ret;
}
public PageQuery<HandsOn>queryByConditionQuery(PageQuery query){
PageQuery ret = handsOnDao.queryByConditionQuery(query);
queryListAfter(ret.getList());
return ret;
}
public void deleteByList(List list){
String ids = "";
ToolUtils.deleteNullList(list);
for(int i=0;null != list && i<list.size();i++){
ids += list.get(i).toString()+(i==list.size()-1?"":",");
}
if(StringUtils.isNotBlank(ids)){
handsOnDao.deleteHandsOnByIds(ids);
}
}
public void deleteHandsOn(String ids){
try {
handsOnDao.deleteHandsOnByIds(ids);
} catch (Exception e) {
throw new PlatformException("批量删除HandsOn失败", e);
}
}
public String addAll(HandsOnQuery handsOnQuery){
String msg = "";
List<HandsOn> handsOnList = new ArrayList<>();
try {
handsOnList = JSON.parseArray(handsOnQuery.getHandsOnJsonStr(), HandsOn.class);
} catch (Exception e) {
try {
handsOnList.add(JSONObject.parseObject(handsOnQuery.getHandsOnJsonStr(), HandsOn.class));
} catch (Exception e1) {}
}
ToolUtils.deleteNullList(handsOnList);
if(null != handsOnList && handsOnList.size()>0){
for(int i=0;i<handsOnList.size();i++){
HandsOn handsOn = handsOnList.get(i);
}
insertBatch(handsOnList);
}
return msg;
}
public JsonResult add(HandsOnQuery handsOnQuery){
String msg = "";
HandsOn handsOn = handsOnQuery.pojo();
handsOnDao.insert(handsOn);
handsOnQuery.setHandsOnId(handsOn.getHandsOnId());
JsonResult jsonResult = new JsonResult();
jsonResult.setData(handsOn.getHandsOnId());//自增的ID丢进去
jsonResult.setCode(JsonReturnCode.SUCCESS.getCode());
jsonResult.setMsg(msg);
return jsonResult;
}
public String edit(HandsOnQuery handsOnQuery){
String msg = "";
HandsOn handsOn = handsOnQuery.pojo();
handsOnDao.updateTemplateById(handsOn);
return msg;
}
public String updateGivenByIds(HandsOnQuery handsOnQuery){
String msg = "";
if(StringUtils.isNotBlank(handsOnQuery.get_given())){
boolean flag = handsOnDao.updateGivenByIds(handsOnQuery) > 0;
if(!flag){
msg = "更新指定参数失败";
}
}else{
msg = "指定参数为空";
}
return msg;
}
public List<HandsOn> getValues (Object paras){
return sqlManager.select(SqlId.of("jlw.handsOn.getHandsOnValues"), HandsOn.class, paras);
}
public List<HandsOn> getValuesByQuery (HandsOnQuery handsOnQuery){
return handsOnDao.getValuesByQuery(handsOnQuery);
}
public HandsOn getInfo (Long handsOnId){
HandsOnQuery handsOnQuery = new HandsOnQuery();
handsOnQuery.setHandsOnId(handsOnId);
List<HandsOn> list = handsOnDao.getValuesByQuery(handsOnQuery);
if(null != list && list.size()>0){
return list.get(0);
}else{
return null;
}
}
public HandsOn getInfo (HandsOnQuery handsOnQuery){
List<HandsOn> list = handsOnDao.getValuesByQuery(handsOnQuery);
if(null != list && list.size()>0){
return list.get(0);
}else{
return null;
}
}
}

@ -0,0 +1,217 @@
package com.ibeetl.jlw.web;
import cn.jlw.Interceptor.RFile;
import cn.jlw.Interceptor.SCoreUser;
import cn.jlw.Interceptor.getFile;
import cn.jlw.util.ToolUtils;
import cn.jlw.validate.ValidateConfig;
import com.ibeetl.admin.core.entity.CoreUser;
import com.ibeetl.admin.core.file.FileService;
import com.ibeetl.admin.core.util.ConvertUtil;
import com.ibeetl.admin.core.util.PlatformException;
import com.ibeetl.admin.core.util.TimeTool;
import com.ibeetl.admin.core.web.JsonResult;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.beetl.sql.core.engine.PageQuery;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.validation.annotation.Validated;
import com.ibeetl.admin.console.web.dto.DictExcelImportData;
import com.ibeetl.admin.console.web.query.UserQuery;
import com.ibeetl.admin.core.annotation.Function;
import com.ibeetl.jlw.entity.*;
import com.ibeetl.jlw.service.*;
import com.ibeetl.jlw.web.query.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.math.BigDecimal;
import javax.annotation.Resource;
/**
* HandsOn
* 线
*/
@RestController
public class HandsOnController{
private final Log log = LogFactory.getLog(this.getClass());
private static final String MODEL = "/jlw/handsOn";
private static final String API = "/api/handsOn";
@Resource private HandsOnService handsOnService;
@Resource FileService fileService;
/* 前端接口 */
@PostMapping(API + "/getPageList.do")
public JsonResult<PageQuery> getPageList(HandsOnQuery condition,@SCoreUser CoreUser coreUser){
if(null == coreUser){
return JsonResult.failMessage("请登录后再操作");
}else{
PageQuery page = condition.getPageQuery();
handsOnService.queryByConditionQuery(page);
return JsonResult.success(page);
}
}
@GetMapping(API + "/getInfo.do")
public JsonResult<HandsOn>getInfo(HandsOnQuery param,@SCoreUser CoreUser coreUser) {
if(null == coreUser){
return JsonResult.failMessage("请登录后再操作");
}else{
HandsOn handsOn = handsOnService.getInfo(param);
return JsonResult.success(handsOn);
}
}
@GetMapping(API + "/getList.do")
public JsonResult<List<HandsOn>>getList(HandsOnQuery param,@SCoreUser CoreUser coreUser) {
if(null == coreUser){
return JsonResult.failMessage("请登录后再操作");
}else{
List<HandsOn>list = handsOnService.getValuesByQuery(param);
return JsonResult.success(list);
}
}
/* 后台页面 */
@GetMapping(MODEL + "/index.do")
@Function("handsOn.query")
public ModelAndView index() {
ModelAndView view = new ModelAndView("/jlw/handsOn/index.html") ;
view.addObject("search", HandsOnQuery.class.getName());
return view;
}
@GetMapping(MODEL + "/edit.do")
@Function("handsOn.edit")
public ModelAndView edit(Long handsOnId) {
ModelAndView view = new ModelAndView("/jlw/handsOn/edit.html");
HandsOn handsOn = handsOnService.queryById(handsOnId);
view.addObject("handsOn", handsOn);
return view;
}
@GetMapping(MODEL + "/add.do")
@Function("handsOn.add")
public ModelAndView add(Long handsOnId) {
ModelAndView view = new ModelAndView("/jlw/handsOn/add.html");
if(null != handsOnId){
HandsOn handsOn = handsOnService.queryById(handsOnId);
view.addObject("handsOn", handsOn);
}else {
view.addObject("handsOn", new HandsOn());
}
return view;
}
/* 后台接口 */
@PostMapping(MODEL + "/list.json")
@Function("handsOn.query")
public JsonResult<PageQuery> list(HandsOnQuery condition){
PageQuery page = condition.getPageQuery();
handsOnService.queryByCondition(page);
return JsonResult.success(page);
}
@PostMapping(MODEL + "/addAll.json")
@Function("handsOn.add")
public JsonResult addAll(HandsOnQuery handsOnQuery,@SCoreUser CoreUser coreUser){
if(null == coreUser){
return JsonResult.failMessage("请登录后再操作");
}else{
String msg = handsOnService.addAll(handsOnQuery);
if (StringUtils.isBlank(msg)) {
return JsonResult.success();
} else {
return JsonResult.failMessage("新增失败,"+msg);
}
}
}
@PostMapping(MODEL + "/add.json")
@Function("handsOn.add")
public JsonResult add(@Validated(ValidateConfig.ADD.class) HandsOnQuery handsOnQuery, BindingResult result,@SCoreUser CoreUser coreUser){
if(result.hasErrors()){
return JsonResult.failMessage(result);
}else{
return handsOnService.add(handsOnQuery);
}
}
@PostMapping(MODEL + "/edit.json")
@Function("handsOn.edit")
public JsonResult<String> update(@Validated(ValidateConfig.UPDATE.class) HandsOnQuery handsOnQuery, BindingResult result) {
if(result.hasErrors()){
return JsonResult.failMessage(result);
}else {
String msg = handsOnService.edit(handsOnQuery);
if (StringUtils.isBlank(msg)) {
return JsonResult.success();
} else {
return JsonResult.failMessage("更新失败,"+msg);
}
}
}
@GetMapping(MODEL + "/view.json")
@Function("handsOn.query")
public JsonResult<HandsOn>queryInfo(Long handsOnId) {
HandsOn handsOn = handsOnService.queryById( handsOnId);
return JsonResult.success(handsOn);
}
@GetMapping(MODEL + "/getValues.json")
@Function("handsOn.query")
public JsonResult<List<HandsOn>>getValues(HandsOnQuery param) {
List<HandsOn>list = handsOnService.getValuesByQuery(param);
return JsonResult.success(list);
}
@PostMapping(MODEL + "/delete.json")
@Function("handsOn.delete")
@ResponseBody
public JsonResult delete(String ids) {
handsOnService.deleteHandsOn(ids);
return JsonResult.success();
}
}

@ -0,0 +1,164 @@
queryByCondition
===
* 根据不为空的参数进行分页查询
select
@pageTag(){
t.*
@}
from hands_on t
where 1=1
@//数据权限该sql语句功能点,如果不考虑数据权限,可以删除此行
and #function("handsOn.query")#
@if(!isEmpty(handsOnId)){
and t.hands_on_id =#handsOnId#
@}
@if(!isEmpty(courseInfoId)){
and t.course_info_id =#courseInfoId#
@}
@if(!isEmpty(courseChildNode)){
and t.course_child_node =#courseChildNode#
@}
@if(!isEmpty(handsOnName)){
and t.hands_on_name =#handsOnName#
@}
@if(!isEmpty(handsOnRecommend)){
and t.hands_on_recommend =#handsOnRecommend#
@}
queryByConditionQuery
===
* 根据不为空的参数进行分页查询(无权限)
select
@pageTag(){
t.*
@}
from hands_on t
where 1=1
@if(!isEmpty(handsOnId)){
and t.hands_on_id =#handsOnId#
@}
@if(!isEmpty(courseInfoId)){
and t.course_info_id =#courseInfoId#
@}
@if(!isEmpty(courseChildNode)){
and t.course_child_node =#courseChildNode#
@}
@if(!isEmpty(handsOnName)){
and t.hands_on_name =#handsOnName#
@}
@if(!isEmpty(handsOnRecommend)){
and t.hands_on_recommend =#handsOnRecommend#
@}
deleteHandsOnByIds
===
* 批量删除
delete from hands_on where find_in_set(hands_on_id,#ids#)
getByIds
===
select * from hands_on where find_in_set(hands_on_id,#ids#)
updateGivenByIds
===
* 批量更新指定字段,无论此字段是否有值
update hands_on
set
@if(contain("courseInfoId",_given)){
@if(isEmpty(courseInfoId)){
course_info_id = null ,
@}else{
course_info_id = #courseInfoId# ,
@}
@}
@if(contain("courseChildNode",_given)){
@if(isEmpty(courseChildNode)){
course_child_node = null ,
@}else{
course_child_node = #courseChildNode# ,
@}
@}
@if(contain("handsOnName",_given)){
@if(isEmpty(handsOnName)){
hands_on_name = null ,
@}else{
hands_on_name = #handsOnName# ,
@}
@}
@if(contain("handsOnRecommend",_given)){
@if(isEmpty(handsOnRecommend)){
hands_on_recommend = null ,
@}else{
hands_on_recommend = #handsOnRecommend# ,
@}
@}
hands_on_id = hands_on_id
where find_in_set(hands_on_id,#handsOnIdPlural#)
getHandsOnValues
===
* 根据不为空的参数进行查询
select t.*
from hands_on t
where 1=1
@if(!isEmpty(handsOnId)){
and t.hands_on_id =#handsOnId#
@}
@if(!isEmpty(courseInfoId)){
and t.course_info_id =#courseInfoId#
@}
@if(!isEmpty(courseChildNode)){
and t.course_child_node =#courseChildNode#
@}
@if(!isEmpty(handsOnName)){
and t.hands_on_name =#handsOnName#
@}
@if(!isEmpty(handsOnRecommend)){
and t.hands_on_recommend =#handsOnRecommend#
@}
getValuesByQuery
===
* 根据不为空的参数进行查询
select t.*
from hands_on t
where 1=1 and #function("handsOn.query")#
@if(!isEmpty(handsOnId)){
and t.hands_on_id =#handsOnId#
@}
@if(!isEmpty(courseInfoId)){
and t.course_info_id =#courseInfoId#
@}
@if(!isEmpty(courseChildNode)){
and t.course_child_node =#courseChildNode#
@}
@if(!isEmpty(handsOnName)){
and t.hands_on_name =#handsOnName#
@}
@if(!isEmpty(handsOnRecommend)){
and t.hands_on_recommend =#handsOnRecommend#
@}

@ -0,0 +1,38 @@
layui.define([ 'form', 'laydate', 'table','handsOnApi'], function(exports) {
var form = layui.form;
var handsOnApi = layui.handsOnApi;
var index = layui.index;
var view = {
init:function(){
Lib.initGenrealForm($("#addForm"),form);
this.initSubmit();
},
initSubmit:function(){
$("#addButton").click(function(){
form.on('submit(form)', function(){
var handsOnId = $("#addForm input[name='handsOnId']").val();
if(!$.isEmpty(handsOnId)){
handsOnApi.updateHandsOn($('#addForm'),function(){
parent.window.dataReload();
Common.info("更新成功");
Lib.closeFrame();
});
}else{
handsOnApi.addHandsOn($('#addForm'),function(){
parent.window.dataReload();
Common.info("添加成功");
Lib.closeFrame();
});
}
});
});
$("#addButton-cancel").click(function(){
Lib.closeFrame();
});
}
}
exports('add',view);
});

@ -0,0 +1,23 @@
layui.define(['table', 'handsOnApi'], function(exports) {
var handsOnApi = layui.handsOnApi;
var table=layui.table;
var view = {
init:function(){
},
delBatch:function(){
var data = Common.getMoreDataFromTable(table,"handsOnTable");
if(data==null){
return ;
}
Common.openConfirm("确认要删除这些HandsOn?",function(){
var ids =Common.concatBatchId(data,"handsOnId");
handsOnApi.del(ids,function(){
Common.info("删除成功");
dataReload();
})
})
}
}
exports('del',view);
});

@ -0,0 +1,28 @@
layui.define([ 'form', 'laydate', 'table','handsOnApi'], function(exports) {
var form = layui.form;
var handsOnApi = layui.handsOnApi;
var index = layui.index;
var view = {
init:function(){
Lib.initGenrealForm($("#updateForm"),form);
this.initSubmit();
},
initSubmit:function(){
$("#updateButton").click(function(){
form.on('submit(form)', function(){
handsOnApi.updateHandsOn($('#updateForm'),function(){
parent.window.dataReload();
Common.info("更新成功");
Lib.closeFrame();
});
});
});
$("#updateButton-cancel").click(function(){
Lib.closeFrame();
});
}
}
exports('edit',view);
});

@ -0,0 +1,18 @@
/*访问后台的代码*/
layui.define([], function(exports) {
var api={
updateHandsOn:function(form,callback){
Lib.submitForm("/jlw/handsOn/edit.json",form,{},callback)
},
addHandsOn:function(form,callback){
Lib.submitForm("/jlw/handsOn/add.json",form,{},callback)
},
del:function(ids,callback){
Common.post("/jlw/handsOn/delete.json",{"ids":ids},function(){
callback();
})
}
};
exports('handsOnApi',api);
});

@ -0,0 +1,157 @@
layui.define([ 'form', 'laydate', 'table' ], function(exports) {
var form = layui.form;
var laydate = layui.laydate;
var table = layui.table;
var handsOnTable = null;
var view ={
init:function(){
var that = this
this.initTable();
this.initSearchForm();
this.initToolBar();
window.dataReload = function(){
Lib.doSearchForm($("#searchForm"),handsOnTable)
that.initToolBar();
}
},
initTable:function(){
var sx_ = localStorage.getItem("handsOnTable_field_"+Common.userInfoId); //筛选值显示、隐藏缓存
if($.isEmpty(sx_)){sx_ = {};}else {sx_ = JSON.parse(sx_);}
handsOnTable = table.render({
elem : '#handsOnTable',
height : Lib.getTableHeight(1),
cellMinWidth: 100,
method : 'post',
url : Common.ctxPath + '/jlw/handsOn/list.json' // 数据接口
,page : Lib.tablePage // 开启分页
,toolbar: '#toolbar_handsOn' //自定义头部左侧工具栏
,defaultToolbar: ['filter', 'print', 'exports'] //头部右侧工具栏
,limit : 10,
cols : [ [ // 表头
{
type : 'checkbox',
},
{
field : 'handsOnId',
title : '实操主键',
align:"center",
hideField :false,
hide:$.isEmpty(sx_['handsOnId'])?false:sx_['handsOnId'],
width : 60,
},
{
field : 'courseInfoId',
title : '归属课程',
align:"center",
hideField :false,
hide:$.isEmpty(sx_['courseInfoId'])?false:sx_['courseInfoId'],
},
{
field : 'courseChildNode',
title : '归属章节',
align:"center",
hideField :false,
hide:$.isEmpty(sx_['courseChildNode'])?false:sx_['courseChildNode'],
},
{
field : 'handsOnName',
title : '实操名称',
align:"center",
hideField :false,
hide:$.isEmpty(sx_['handsOnName'])?false:sx_['handsOnName'],
},
{
field : 'handsOnRecommend',
title : '实操介绍',
align:"center",
hideField :false,
hide:$.isEmpty(sx_['handsOnRecommend'])?false:sx_['handsOnRecommend'],
}
,{
field : 'operation_',title : '操作',align:"center", templet: function (d) {
var htm = '<button type="button" class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit">编辑</button>';
htm += '<button type="button" class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</button>';
return htm;
}
}
] ]
});
table.on('checkbox(handsOnTable)', function(obj){
var handsOn = obj.data;
if(obj.checked){
//按钮逻辑Lib.buttonEnable()
}else{
}
})
},
initSearchForm:function(){
Lib.initSearchForm( $("#searchForm"),handsOnTable,form);
},
initToolBar:function(){
toolbar = {
add: function () {
var url = "/jlw/handsOn/add.do";
Common.openDlg(url,"HandsOn管理>新增");
},
edit: function () {
var data = Common.getOneFromTable(table,"handsOnTable");
if(data==null){
return ;
}
var url = "/jlw/handsOn/add.do?handsOnId="+data.handsOnId;
Common.openDlg(url,"HandsOn管理>"+data.handsOnId+">编辑");
},
del: function () {
layui.use(['del'], function(){
var delView = layui.del
delView.delBatch();
});
},
search: function () {
Lib.doSearchForm($("#searchForm"), handsOnTable, 1);
view.initToolBar()
},
refresh: function () {
searchForm.reset();
Lib.doSearchForm($("#searchForm"), handsOnTable, 1);
view.initToolBar()
},
}
//触发事件
$('.ext-toolbar').on('click', function() {
var type = $(this).data('type');
toolbar[type] ? toolbar[type].call(this) : '';
});
}, initTableTool: table.on('tool(handsOnTable)', function (obj) {
var data = obj.data;
if (obj.event === 'edit') {
var url = "/jlw/handsOn/add.do?handsOnId="+data.handsOnId;
Common.openDlg(url,"HandsOn管理>"+data.handsOnId+">编辑");
}else if(obj.event === "del"){
layer.confirm('是否确定删除该信息?', function (index) {
var ret = Common.postAjax("/jlw/handsOn/delete.json",{ids:data.handsOnId});
layer.msg(ret.code == 0?"删除成功!":ret.msg, {
offset: ['50%'],
icon: ret.code == 0?1:2,
time: 1500 //2秒关闭如果不配置默认是3秒
},function (){
if(ret.code == 0){
Lib.tableRefresh();
}
});
});
}
})
}
exports('index',view);
});

@ -0,0 +1,50 @@
<!--# layout("/common/layout.html",{"jsBase":"/js/jlw/handsOn/"}){ -->
<form class="layui-form" id="addForm">
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">归属课程</label>
<div class="layui-input-inline">
<input type="text" id="courseInfoId" name="courseInfoId" value="${handsOn.courseInfoId}" class="layui-input" >
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">归属章节</label>
<div class="layui-input-inline">
<input type="text" id="courseChildNode" name="courseChildNode" value="${handsOn.courseChildNode}" class="layui-input" >
</div>
</div>
</div>
</div>
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">实操名称</label>
<div class="layui-input-inline">
<input type="text" id="handsOnName" name="handsOnName" value="${handsOn.handsOnName}" class="layui-input" >
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">实操介绍</label>
<div class="layui-input-inline">
<input type="text" id="handsOnRecommend" name="handsOnRecommend" value="${handsOn.handsOnRecommend}" class="layui-input" >
</div>
</div>
</div>
</div>
<div class="layui-row">
<!-- 业务对象得有一个字段保存附件id假设是attachmentId -->
<layui:attachment name="attachmentId" batchFileUUID="${uuid()}" bizType="entity.name" isNew="true" />
</div>
<!-- 业务对象须有hidden字段保存delFlag和version字段-->
<input type="hidden" name="handsOnId" value="${handsOn.handsOnId}" />
<layui:submitButtons id="addButton" buttonType="" showExamine="2" />
</form>
<!--#} -->
<script>
layui.use(['add'], function(){
var handsOnAdd = layui.add
handsOnAdd.init();
});
</script>

@ -0,0 +1,49 @@
<!--# layout("/common/layout.html",{"jsBase":"/js/jlw/handsOn/"}){ -->
<form class="layui-form" id="updateForm">
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">归属课程</label>
<div class="layui-input-inline">
<input type="text" id="courseInfoId" name="courseInfoId" value="${handsOn.courseInfoId}" class="layui-input" >
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">归属章节</label>
<div class="layui-input-inline">
<input type="text" id="courseChildNode" name="courseChildNode" value="${handsOn.courseChildNode}" class="layui-input" >
</div>
</div>
</div>
</div>
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">实操名称</label>
<div class="layui-input-inline">
<input type="text" id="handsOnName" name="handsOnName" value="${handsOn.handsOnName}" class="layui-input" >
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">实操介绍</label>
<div class="layui-input-inline">
<input type="text" id="handsOnRecommend" name="handsOnRecommend" value="${handsOn.handsOnRecommend}" class="layui-input" >
</div>
</div>
</div>
</div>
<div class="layui-row">
<layui:attachment name="attachmentId" batchFileUUID="${handsOn.attachmentId!uuid()}" isNew="false" bizId="${handsOn.handsOnId}" bizType="HandsOn"/>
</div>
<!-- 业务对象须有hidden字段保存delFlag和version字段-->
<input type="hidden" name="handsOnId" value="${handsOn.handsOnId}" />
<layui:submitButtons id="updateButton" buttonType="" showExamine="2" />
</form>
<!--#} -->
<script>
layui.use(['edit'], function(){
var handsOnEdit = layui.edit
handsOnEdit.init();
});
</script>

@ -0,0 +1,29 @@
<!--#layout("/common/layout.html",{"jsBase":"/js/jlw/handsOn/"}){ -->
<layui:searchForm formId="searchForm" searchList="" condition="${search}">
</layui:searchForm>
<table id="handsOnTable" lay-filter="handsOnTable"></table>
<!--#} -->
<script type="text/html" id="toolbar_handsOn">
<div class="layui-btn-container">
<div class="layui-btn-group" >
<!--# if(!isEmpty(search)) {-->
<layui:accessButton function="handsOn.query" id="searchFormSearch" action="search"><i class="layui-icon">&#xe615;</i>搜索</layui:accessButton>
<!--# }-->
<layui:accessButton function="handsOn.add" action="add">添加</layui:accessButton>
<layui:accessButton function="handsOn.edit" action="edit">修改</layui:accessButton>
<layui:accessButton function="handsOn.del" action="del">删除</layui:accessButton>
<!--# if(!isEmpty(search)) {-->
<layui:accessButton function="handsOn.query" action="refresh"><i class="layui-icon">&#xe669;</i>刷新</layui:accessButton>
<!--# }-->
</div>
</div>
</script>
<script>
layui.use(['index'], function(){
var index = layui.index;
index.init();
});
</script>
Loading…
Cancel
Save