|
|
layui.define([ 'form', 'laydate', 'table' ], function(exports) {
|
|
|
var form = layui.form,
|
|
|
laydate = layui.laydate,
|
|
|
table = layui.table,
|
|
|
resourcesInfoTable = null,
|
|
|
courseInfoMap = {},//课程map
|
|
|
zjMap = {},//章节map
|
|
|
selectMap = {},//已经生成过select的map
|
|
|
selectList = "<select lay-filter='select_courseInfoIds'><option value=''>请选择</option>",
|
|
|
courseLabelTypes = Common.getAjax("/jlw/courseInfo/getTreeByCourseLabelTypes.json",{courseLabelTypes:"实务课程类",rankLimit:3}).data; //获取课程数据
|
|
|
$.each(courseLabelTypes,function (key,value){
|
|
|
selectList += '<option value="'+value.courseInfoId+'">'+value.courseInfoName+'</option>';
|
|
|
courseInfoMap[value.courseInfoId] = {courseInfoName:value.courseInfoName,children:value.children};
|
|
|
$.each(value.children,function (k,v){
|
|
|
zjMap[v.courseInfoId] = {courseInfoName:v.courseInfoName,children:v.children};
|
|
|
});
|
|
|
});
|
|
|
selectList += "</select>";
|
|
|
var view ={
|
|
|
init:function(){
|
|
|
this.initTable();
|
|
|
this.initSearchForm();
|
|
|
this.initToolBar();
|
|
|
window.dataReload = function(){
|
|
|
Lib.doSearchForm($("#searchForm"),resourcesInfoTable);
|
|
|
}
|
|
|
},
|
|
|
initTable:function(){
|
|
|
resourcesInfoTable = table.render({
|
|
|
elem : '#resourcesInfoTable',
|
|
|
height : Lib.getTableHeight(),
|
|
|
cellMinWidth: 100,
|
|
|
method : 'post',
|
|
|
even:true,
|
|
|
size:"lg",
|
|
|
url : Common.ctxPath + '/jlw/resourcesInfo/list.json' // 数据接口
|
|
|
,page : Lib.tablePage // 开启分页
|
|
|
,limit : 10,
|
|
|
cols : [ [ // 表头
|
|
|
{
|
|
|
type : 'checkbox'
|
|
|
},
|
|
|
{
|
|
|
field : 'resourcesInfoName', title : '资源名称',align:"center",style:"text-align: left;"
|
|
|
},
|
|
|
{
|
|
|
field : 'courseInfoParentParentName', title : '归属课程',align:"center",width:200, templet: function (d) {
|
|
|
return selectList; //一级
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
field : 'courseInfoParentName', title : '归属章节',align:"center",width:200, templet: function (d) {
|
|
|
var htm = "<select lay-filter='select_courseInfoIds_1'><option value=''>请选择</option>";
|
|
|
if(!$.isEmpty(d.courseInfoParentId)){
|
|
|
if($.isEmpty(selectMap[d.courseInfoParentId])){
|
|
|
var h = htm;
|
|
|
if(!$.isEmpty(courseInfoMap[d.courseInfoParentParentId])) {
|
|
|
$.each(courseInfoMap[d.courseInfoParentParentId].children, function (key, v) {
|
|
|
h += "<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>";
|
|
|
});
|
|
|
}
|
|
|
selectMap[d.courseInfoParentId] = h + "</select>";
|
|
|
return h;
|
|
|
}else {
|
|
|
return selectMap[d.courseInfoParentId];
|
|
|
}
|
|
|
}else {
|
|
|
return htm + "</select>"; //二级
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
|
|
|
field : 'courseInfoName', title : '归属小节',align:"center",width:200, templet: function (d) {
|
|
|
var htm = "<select lay-filter='select_courseInfoIds_2'><option value=''>请选择</option>";
|
|
|
if(!$.isEmpty(d.courseInfoId)){
|
|
|
if($.isEmpty(selectMap[d.courseInfoId])){
|
|
|
var h = htm;
|
|
|
if(!$.isEmpty(zjMap[d.courseInfoParentId])){
|
|
|
$.each(zjMap[d.courseInfoParentId].children,function (key,v){
|
|
|
h += "<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>";
|
|
|
});
|
|
|
}
|
|
|
selectMap[d.courseInfoId] = h + "</select>";
|
|
|
return h;
|
|
|
}else {
|
|
|
return selectMap[d.courseInfoId];
|
|
|
}
|
|
|
}else {
|
|
|
return htm + "</select>"; //三级
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
field : 'resourcesInfoType', width:150,title : '资源类型',align:"center",templet:function (d){//(1视频 2课件 3附件)
|
|
|
return d.resourcesInfoType == 1?"视频":d.resourcesInfoType == 2?"课件":d.resourcesInfoType == 3?"附件":'-';
|
|
|
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
field : 'userId',title : '操作', width:180,align:"center", templet: function (d) {
|
|
|
var htm = '<button type="button" class="layui-btn layui-btn-xs" lay-event="edit">编辑</button></a>';
|
|
|
htm += '<button type="button" class="layui-btn layui-btn-xs" lay-event="previewPage">'+(d.resourcesInfoType == 3?'下载':'预览')+'</button></a>';
|
|
|
htm += '<button type="button" class="layui-btn layui-btn-xs" lay-event="del">删除</button></a>';
|
|
|
return htm;
|
|
|
}
|
|
|
}
|
|
|
] ],done: function (res, curr, count) {
|
|
|
$.each(res.data,function (k,v){
|
|
|
$("div[lay-id='resourcesInfoTable'] tbody tr:eq("+k+")").find("select:eq(0)").val(v.courseInfoParentParentId);
|
|
|
$("div[lay-id='resourcesInfoTable'] tbody tr:eq("+k+")").find("select:eq(1)").val(v.courseInfoParentId);
|
|
|
$("div[lay-id='resourcesInfoTable'] tbody tr:eq("+k+")").find("select:eq(2)").val(v.courseInfoId);
|
|
|
});
|
|
|
form.render();
|
|
|
$.each($("td[data-field='courseInfoName']"),function (k,v){
|
|
|
$(this).find("input").val($(this).find("input").context.dataset.content);
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|
|
|
table.on('checkbox(resourcesInfoTable)', function(obj){
|
|
|
var resourcesInfo = obj.data;
|
|
|
if(obj.checked){
|
|
|
//按钮逻辑Lib.buttonEnable()
|
|
|
}else{
|
|
|
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
|
|
|
initSearchForm:function(){
|
|
|
Lib.initSearchForm( $("#searchForm"),resourcesInfoTable,form);
|
|
|
},
|
|
|
initToolBar:function(){
|
|
|
toolbar = {
|
|
|
add : function() { // 获取选中数据
|
|
|
var url = "/jlw/resourcesInfo/add.do";
|
|
|
Common.openDlg(url,"资源管理/新增资源");
|
|
|
},
|
|
|
refresh: function () {//刷新
|
|
|
searchForm.reset();
|
|
|
Lib.doSearchForm($("#searchForm"), resourcesInfoTable, 1);
|
|
|
},
|
|
|
search:function () {
|
|
|
Lib.doSearchForm($("#searchForm"), resourcesInfoTable, 1);
|
|
|
},
|
|
|
allDel:function () {//批量删除
|
|
|
var checkStatus = table.checkStatus('resourcesInfoTable')
|
|
|
,data = checkStatus.data,ids="";
|
|
|
for(var i = 0;i<data.length;i++){
|
|
|
ids += data[i].resourcesInfoId;
|
|
|
if(i < data.length - 1){
|
|
|
ids += ",";
|
|
|
}
|
|
|
}
|
|
|
if($.isEmpty(ids)){
|
|
|
layer.msg("请选择需要删除的数据!", {
|
|
|
offset: ['50%'],
|
|
|
icon: 2,
|
|
|
time: 1500 //2秒关闭(如果不配置,默认是3秒)
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
deleteInfo(ids);
|
|
|
},
|
|
|
bindingCourseInfo:function (){//批量绑定课程
|
|
|
var checkStatus = table.checkStatus('resourcesInfoTable')
|
|
|
,data = checkStatus.data,ids="";
|
|
|
for(var i = 0;i<data.length;i++){
|
|
|
ids += data[i].resourcesInfoId;
|
|
|
if(i < data.length - 1){
|
|
|
ids += ",";
|
|
|
}
|
|
|
}
|
|
|
if($.isEmpty(ids)){
|
|
|
layer.msg("请选择需要绑定章节的数据!", {
|
|
|
offset: ['50%'],
|
|
|
icon: 2,
|
|
|
time: 1500 //2秒关闭(如果不配置,默认是3秒)
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
bindingCourseInfo(ids);
|
|
|
}
|
|
|
};
|
|
|
$('.ext-toolbar').on('click', function() {
|
|
|
var type = $(this).data('type');
|
|
|
toolbar[type] ? toolbar[type].call(this) : '';
|
|
|
});
|
|
|
}, initTableTool: table.on('tool(resourcesInfoTable)', function (obj) {
|
|
|
var data = obj.data;
|
|
|
if (obj.event === 'edit') {
|
|
|
var url = "/jlw/resourcesInfo/add.do?resourcesInfoId="+data.resourcesInfoId;
|
|
|
Common.openDlg(url,"资源管理/编辑资源");
|
|
|
}else if(obj.event === "del"){
|
|
|
deleteInfo(data.resourcesInfoId);
|
|
|
}else if(obj.event === "previewPage"){
|
|
|
Lib.downloadFile(data);
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
function deleteInfo(ids){
|
|
|
layer.confirm('是否确定删除数据?', function (index) {
|
|
|
var ret = Common.postAjax("/jlw/resourcesInfo/delete.json", {ids: ids});
|
|
|
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();
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
|
|
|
//批量绑定章节
|
|
|
function bindingCourseInfo(ids){
|
|
|
layer.open({
|
|
|
type: 1,
|
|
|
title: "批量绑定章节",
|
|
|
shadeClose: true,
|
|
|
btn: ['确定', '关闭'],
|
|
|
btnAlign: 'c',
|
|
|
area: ['620px', '360px'],
|
|
|
content: $("#bindingCourseInfo_dialog"),
|
|
|
success: function (layero, index) {
|
|
|
$("#bindingCourseInfo_dialog select").val("");
|
|
|
$("#bindingCourseInfo_dialog .layui-input-inline").css("width","400px");
|
|
|
form.render();
|
|
|
}, yes: function (index) {
|
|
|
var courseInfoId = $("#bindingCourseInfo_dialog select[name='courseInfoId']").val();
|
|
|
if($.isEmpty(courseInfoId)){
|
|
|
layer.msg("请选择归属小结!");
|
|
|
return ;
|
|
|
}
|
|
|
var ret = Common.postAjax("/jlw/resourcesInfo/setCourseInfoId.json",{courseInfoId:courseInfoId,resourcesInfoIds:ids});
|
|
|
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();
|
|
|
layer.close(index);
|
|
|
}
|
|
|
});
|
|
|
}, btn2: function (index, layero) {
|
|
|
layer.close(index);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
//选择归属课程 并且根据选择的课程查询章节
|
|
|
form.on('select(select_courseId)', function (obj) {
|
|
|
var this_ = $("#bindingCourseInfo_dialog select[name='chapterId']");
|
|
|
var this_1 = $("#bindingCourseInfo_dialog select[name='courseInfoId']");
|
|
|
this_.empty();
|
|
|
this_.append("<option value=''>请选择</option>");
|
|
|
this_1.empty();
|
|
|
this_1.append("<option value=''>请选择</option>");
|
|
|
if(!$.isEmpty(obj.value)){
|
|
|
$.each(courseInfoMap[obj.value].children,function (key,v){
|
|
|
this_.append("<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>");
|
|
|
});
|
|
|
}
|
|
|
form.render();
|
|
|
});
|
|
|
|
|
|
//选择归属课程 并且根据选择的课程查询章节
|
|
|
form.on('select(select_chapterId)', function (obj) {
|
|
|
var this_ = $("#bindingCourseInfo_dialog select[name='courseInfoId']");
|
|
|
this_.empty();
|
|
|
this_.append("<option value=''>请选择</option>");
|
|
|
if(!$.isEmpty(obj.value)){
|
|
|
$.each(zjMap[obj.value].children,function (key,v){
|
|
|
this_.append("<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>");
|
|
|
});
|
|
|
}
|
|
|
form.render();
|
|
|
});
|
|
|
|
|
|
//选择归属课程 并且根据选择的课程查询章节
|
|
|
form.on('select(select_courseInfoIds)', function (obj) {
|
|
|
var this_ = $(this).parents("td").next().find("select");
|
|
|
this_.empty();
|
|
|
this_.append("<option value=''>请选择</option>");
|
|
|
|
|
|
$(this).parents("td").next().next().find("select").empty();
|
|
|
$(this).parents("td").next().next().find("select").append("<option value=''>请选择</option>");
|
|
|
if(!$.isEmpty(obj.value)){
|
|
|
$.each(courseInfoMap[obj.value].children,function (key,v){
|
|
|
this_.append("<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>");
|
|
|
});
|
|
|
}
|
|
|
form.render();
|
|
|
});
|
|
|
|
|
|
//选择归属课程 并且根据选择的课程查询章节
|
|
|
form.on('select(select_courseInfoIds_1)', function (obj) {
|
|
|
var this_ = $(this).parents("td").next().find("select");
|
|
|
this_.empty();
|
|
|
this_.append("<option value=''>请选择</option>");
|
|
|
if(!$.isEmpty(obj.value)){
|
|
|
$.each(zjMap[obj.value].children,function (key,v){
|
|
|
this_.append("<option value='" + v.courseInfoId + "'>" + v.courseInfoName + "</option>");
|
|
|
});
|
|
|
}
|
|
|
form.render();
|
|
|
});
|
|
|
|
|
|
//选择归属课程 并且根据选择的课程查询章节
|
|
|
form.on('select(select_courseInfoIds_2)', function (obj) {
|
|
|
var r = $(this).parents("td").find("input").context.innerHTML.replace(/ /g,"");
|
|
|
$(this).parents("td").find("input").val(r);
|
|
|
var resourcesInfoId = table.cache['resourcesInfoTable'][$(this).parents("tr").attr("data-index")].resourcesInfoId;
|
|
|
if(!$.isEmpty(resourcesInfoId)){
|
|
|
var ret = Common.postAjax("/jlw/resourcesInfo/edit.json",{resourcesInfoId:resourcesInfoId,courseInfoId:obj.value});
|
|
|
layer.msg(ret.code == 0 ? "绑定成功!" : ret.msg, {
|
|
|
offset: ['50%'],
|
|
|
icon: ret.code == 0 ? 1 : 2,
|
|
|
time: 1000 //2秒关闭(如果不配置,默认是3秒)
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|
|
|
exports('index',view);
|
|
|
|
|
|
}); |