course_index.html 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. {extend name="public/layout"/} {block name="title"}课件列表{/block} {block name="body"}
  2. <style type="text/css">
  3. html,
  4. body {
  5. display: block;
  6. min-width: 1100px;
  7. }
  8. .layui-layer .layui-layer-iframe .layui-layer-title{
  9. background-color: #D8E6F1;
  10. }
  11. .layui-fluid {
  12. display: block;
  13. box-shadow: 0 0 4px 0 #B6CADE;
  14. border-radius: 5px;
  15. margin: 15px;
  16. background-color: #ffffff;
  17. }
  18. .layui-table thead tr,
  19. .layui-table-header {
  20. background-color: #D8E6F1 !important;
  21. }
  22. .layui-form-label {
  23. width: auto;
  24. }
  25. .layui-btn-primary {
  26. color: #249EFB;
  27. border: 1px solid #249EFB;
  28. }
  29. .layui-btn-primary:hover {
  30. background-color: #E3F7FF;
  31. color: #249EFB;
  32. }
  33. .layui-form-item .layui-input-inline {
  34. width: auto;
  35. margin-right: 0px;
  36. }
  37. .layui-table-cell {
  38. padding: 0px 20px;
  39. }
  40. .plr10 {
  41. padding: 0px 10px;
  42. }
  43. .border249EFB,.border249EFB:hover {
  44. border: 1px solid #249EFB;
  45. background-color: #fff;
  46. color: #249EFB;
  47. padding: 0px 10px;
  48. }
  49. .borderFF5722,.borderFF5722:hover {
  50. border: 1px solid #FF5722;
  51. background-color: #fff;
  52. color: #FF5722;
  53. padding: 0px 10px ;
  54. }
  55. .goback {
  56. float: left;
  57. margin-right: 20px;
  58. }
  59. .goback a {
  60. color: #269efb;
  61. }
  62. .goback i {
  63. position: relative !important;
  64. left: 0px;
  65. }
  66. </style>
  67. <div class="layui-fluid">
  68. <div class="layui-card">
  69. <div class="layui-form layui-card-header layuiadmin-card-header-auto">
  70. <div class="layui-form-item">
  71. <div style="float:right;width:auto;">
  72. <div class="layui-inline" style="margin-right: 0px;">
  73. <label class="layui-form-label">场景</label>
  74. <div class="layui-input-inline">
  75. <select name="type_id" lay-filter="type" id="type_id">
  76. <option value="">请选择类型</option>
  77. {volist name="type" id="i"}
  78. <option value="{$i.id}">{$i.type}</option>
  79. {/volist}
  80. </select>
  81. </div>
  82. </div>
  83. <div class="layui-inline" style="margin-right: 0px;">
  84. <label class="layui-form-label">课件类型</label>
  85. <div class="layui-input-inline">
  86. <select name="decostyle" lay-filter="type" id="type">
  87. <option value="">请选择分类</option>
  88. <option value="video">视频课程</option>
  89. <option value="image">图文课程</option>
  90. <option value="audio">音频课程</option>
  91. <option value="pdf">pdf课程</option>
  92. </select>
  93. </div>
  94. </div>
  95. <div class="layui-inline">
  96. <label class="layui-form-label">关键字搜索</label>
  97. <div class="layui-input-inline">
  98. <input type="text" name="keyword" placeholder="请输入关键字搜索" autocomplete="off" class="layui-input keyword">
  99. </div>
  100. </div>
  101. <div class="layui-inline" style="margin-right: 0;">
  102. <button class="layui-btn layuiadmin-btn submitbtn" lay-submit lay-filter="LAY-app-contlist-search">
  103. <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
  104. </button>
  105. </div>
  106. </div>
  107. <div class="layui-inline" style="float: left;">
  108. <button class="layui-btn layuiadmin-btn layui-btn-primary" data-type="trainType">场景管理</button>
  109. {auth:check name="train/course_add"}
  110. <button class="layui-btn layuiadmin-btn layui-btn-primary" data-type="trainAdd">添加课件</button>
  111. {/auth:check}
  112. </div>
  113. </div>
  114. </div>
  115. <div class="layui-card-body">
  116. <table lay-filter="datalist" id="datalist"></table>
  117. </div>
  118. </div>
  119. </div>
  120. {/block} {block name="js"}
  121. <script type="text/html" id="op">
  122. {auth:check name="train/course_add"}
  123. <a class="layui-btn layui-btn-xs plr10 border249EFB" lay-event="edit">编辑</a>
  124. {/auth:check}
  125. {auth:check name="train/del_course_train"}
  126. <a class="layui-btn layui-btn-danger layui-btn-xs borderFF5722 plr10" lay-event="del">删除</a>
  127. {/auth:check}
  128. </script>
  129. <script type="text/html" id="typetpl">
  130. {{# if(d.type){ }}
  131. {{# if(d.type=='image'){ }}
  132. 图文课程
  133. {{# }else if(d.type=='video'){ }}
  134. 视频课程
  135. {{# }else if(d.type=='audio'){ }}
  136. 音频课程
  137. {{# }else if(d.type=='pdf'){ }}
  138. pdf课程
  139. {{# } }}
  140. {{# }else{ }}
  141. <span style="color: #cccccc;">无</span>
  142. {{# } }}
  143. </script>
  144. <script type="text/html" id="view">
  145. <a href="javascript:void(0)" lay-event="showOrgData" style="color:blue;">{{d.train_course_view_count}}</a>
  146. </script>
  147. <script>
  148. layui.config({
  149. base: '__LAYUI__/',
  150. urlbase: '/sys'
  151. }).extend({
  152. index: 'lib/index'
  153. }).use(['index', 'table', 'layedit', 'element'], function() {
  154. var $ = layui.$,
  155. table = layui.table,
  156. element = layui.element,
  157. form = layui.form;
  158. document.onkeydown=function(event){
  159. var e = event || window.event || arguments.callee.caller.arguments[0];
  160. if(e && e.keyCode==13){
  161. $(".submitbtn").trigger("click");
  162. }
  163. };
  164. var active = {
  165. trainAdd: function() {
  166. layer.open({
  167. type: 2,
  168. title:['添加课件','color:#333333;background-color:#D8E6F1;'],
  169. content: '{:url("train/course_add")}',
  170. resize: false,
  171. area: ['80%', '80%'],
  172. });
  173. },
  174. trainType: function() {
  175. layer.open({
  176. type: 2,
  177. title:['场景管理','color:#333333;background-color:#D8E6F1;'],
  178. content: '{:url("train/type_index")}',
  179. resize: false,
  180. area: ['80%', '80%'],
  181. });
  182. }
  183. };
  184. var field = {};
  185. form.on('submit(LAY-app-contlist-search)', function(data) {
  186. var type_id = $('#type_id').val();
  187. var keyword = $('.keyword').val();
  188. var type = $('#type').val();
  189. field['type_id'] = type_id;
  190. field['keyword'] = keyword;
  191. field['type'] = type;
  192. //执行重载
  193. table.reload('datalist', {
  194. where: field,
  195. page: {
  196. curr: 1
  197. }
  198. });
  199. });
  200. table.render({
  201. elem: '#datalist',
  202. url: "{:url('train/trainCourseList')}",
  203. page: true,
  204. height: 'full-160',
  205. cols: [
  206. [{
  207. type: 'numbers',
  208. field: 'id',
  209. title: '序号',
  210. width: 100
  211. },
  212. {
  213. field: 'title',
  214. title: '课件标题'
  215. },
  216. {
  217. field: 'type',
  218. title: '类型',
  219. templet:'#typetpl'
  220. },
  221. {
  222. field: 'type_id',
  223. title: '场景'
  224. },
  225. {
  226. field: 'view',
  227. title: '浏览次数',
  228. templet: '#view',
  229. },
  230. {
  231. fixed: 'right',
  232. title: '操作',
  233. templet: '#op',
  234. },
  235. ]
  236. ]
  237. });
  238. table.on('tool(datalist)', function(obj) {
  239. if(obj.event === 'del') {
  240. layer.confirm('提示:如有课程使用该课件,删除后,课程的统计数据会从新计算, 确定要删除?',{title: ['信息','color:#333333;background-color:#D8E6F1;']}, function() {
  241. var load = layer.load(1, {shade: [0.5, '#fff']});
  242. $.ajax({
  243. url: '{:url("train/del_course_train")}',
  244. data: {
  245. id: obj.data.id
  246. },
  247. type: 'get',
  248. success: function(res) {
  249. if(res.code == 0){
  250. layer.msg(res.msg, {
  251. icon: 1,
  252. time: 1000
  253. },function(){
  254. location.reload();
  255. });
  256. }else{
  257. layer.close(load);
  258. layer.msg(res.msg);
  259. }
  260. }
  261. });
  262. });
  263. }
  264. if(obj.event === 'edit') {
  265. layer.open({
  266. type: 2,
  267. title:['编辑课件','color:#333333;background-color:#D8E6F1;'],
  268. content: '{:url("train/course_edit")}?id=' + obj.data.id,
  269. resize: false,
  270. area: ['80%', '80%'],
  271. });
  272. }
  273. if (obj.event == 'showOrgData') {
  274. layer.open({
  275. type: 2,
  276. title:['浏览记录','color:#333333;background-color:#D8E6F1;'],
  277. content: '{:url("train/courese_view")}?course_id=' + obj.data.id,
  278. resize: false,
  279. area: ['80%', '80%']
  280. });
  281. }
  282. });
  283. $('.layui-btn.layuiadmin-btn').on('click', function() {
  284. var type = $(this).data('type');
  285. active[type] ? active[type].call(this) : '';
  286. });
  287. });
  288. </script>
  289. {/block}