create.php 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. {extend name="public/container"}
  2. {block name='head_top'}
  3. <style>
  4. .layui-form-select dl dd.layui-this {
  5. background-color: #fff;
  6. }
  7. .layui-form-checkbox[lay-skin=primary]:hover i {
  8. border-color: #0093de;
  9. }
  10. label {
  11. margin-bottom: 0;
  12. font-weight: normal;
  13. }
  14. .layui-laydate-footer span:hover {
  15. color: #0092dc;
  16. }
  17. </style>
  18. {/block}
  19. {block name="content"}
  20. <div class="layui-fluid">
  21. <div class="layui-card">
  22. <div class="layui-card-header"></div>
  23. <div class="layui-card-body">
  24. <div class="layui-row">
  25. <div class="layui-col-xs8 layui-col-sm6 layui-col-md4">
  26. <form action="" class="layui-form" lay-filter="form">
  27. <div class="layui-form-item">
  28. <label class="layui-form-label required">班级名称:</label>
  29. <div class="layui-input-block">
  30. <input type="text" name="title" required lay-verify="required" placeholder="请输入班级名称" maxlength="10" autocomplete="off" class="layui-input">
  31. </div>
  32. </div>
  33. <div class="layui-form-item">
  34. <label class="layui-form-label required">配班教师:</label>
  35. <div id="xmSelect" class="layui-input-block"></div>
  36. </div>
  37. <div class="layui-form-item">
  38. <label class="layui-form-label required">班级名额:</label>
  39. <div class="layui-input-block">
  40. <input type="text" name="upper_limit" lay-verify="required|number" placeholder="请输入班级名额" autocomplete="off" class="layui-input">
  41. </div>
  42. </div>
  43. <div class="layui-form-item">
  44. <label class="layui-form-label required">教学时限:</label>
  45. <div class="layui-input-block">
  46. <input id="datetime" type="text" required lay-verify="required" placeholder="请选择教学时限" autocomplete="off" class="layui-input">
  47. </div>
  48. </div>
  49. <div class="layui-form-item">
  50. <label class="layui-form-label required">排序:</label>
  51. <div class="layui-input-block">
  52. <input type="text" name="sort" lay-verify="required|number" autocomplete="off" class="layui-input">
  53. </div>
  54. </div>
  55. <div class="layui-form-item">
  56. <label class="layui-form-label">状态:</label>
  57. <div class="layui-input-block">
  58. <input type="radio" name="status" value="1" title="开班" checked>
  59. <input type="radio" name="status" value="2" title="结班">
  60. </div>
  61. </div>
  62. <div class="layui-form-item">
  63. <div class="layui-input-block">
  64. <button class="layui-btn layui-btn-normal" type="submit" lay-submit lay-filter="*">提交</button>
  65. <button class="layui-btn layui-btn-primary" type="button" id="reset">重置</button>
  66. </div>
  67. </div>
  68. </form>
  69. </div>
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. <script type="text/javascript" src="{__ADMIN_PATH}js/layuiList.js"></script>
  75. {/block}
  76. {block name='script'}
  77. <script>
  78. (function () {
  79. var id={$id},classes=<?=isset($classes) ? $classes : []?>;
  80. var $ = layui.jquery;
  81. var form = layui.form;
  82. var laydate = layui.laydate;
  83. var layer = layui.layer;
  84. var start_time = '';
  85. var end_time = '';
  86. var initValue = '';
  87. var XMSelect = xmSelect.render({
  88. el: '#xmSelect',
  89. data: [],
  90. theme: {
  91. color: '#0092DC'
  92. },
  93. autoRow: true,
  94. name: 'teacher_id',
  95. layVerify: 'required',
  96. prop: {
  97. value: 'id'
  98. }
  99. });
  100. function dateFormat(time) {
  101. var date = new Date(time * 1000),
  102. year = date.getFullYear(),
  103. month = date.getMonth() + 1,
  104. day = date.getDate();
  105. return year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day);
  106. }
  107. $('.layui-card-header').text(id ? '编辑班级' : '添加班级');
  108. if (!Array.isArray(classes)) {
  109. form.val('form', classes);
  110. initValue = dateFormat(classes.start_time) + ' - ' + dateFormat(classes.end_time);
  111. }
  112. form.render();
  113. form.verify({
  114. integer: []
  115. });
  116. laydate.render({
  117. elem: '#datetime',
  118. range: true,
  119. value: initValue,
  120. done: function (value) {
  121. var arr = value.split(' - ');
  122. start_time = arr[0];
  123. end_time = arr[1];
  124. }
  125. });
  126. layList.baseGet(layList.U({
  127. a: 'getTeacherList'
  128. }), function (res) {
  129. XMSelect.update({
  130. data: res.data
  131. });
  132. if (!Array.isArray(classes)) {
  133. XMSelect.setValue(classes.teacher_id.split(','));
  134. }
  135. });
  136. form.on('submit(*)', function (data) {
  137. var field = data.field;
  138. field.start_time = start_time;
  139. field.end_time = end_time;
  140. field.title =data.field.title.trim();
  141. var index = layer.load(1);
  142. layList.basePost(layList.U({
  143. a: 'save_add',
  144. q: {
  145. id: id
  146. }
  147. }), field, function (res) {
  148. layer.close(index);
  149. if (id) {
  150. layer.msg('修改成功', function () {
  151. parent.layer.closeAll();
  152. })
  153. } else {
  154. layer.confirm('添加成功,是否继续添加班级?', {
  155. btn: ['继续添加', '立即提交']
  156. }, function (index) {
  157. layList.layer.close(index);
  158. location.reload();
  159. }, function () {
  160. parent.layer.closeAll();
  161. });
  162. }
  163. }, function (err) {
  164. layer.msg(err.msg,function () {
  165. layList.layer.close(index);
  166. location.reload();
  167. });
  168. });
  169. return false;
  170. });
  171. $('#reset').on('click', function () {
  172. form.val('form', {
  173. title: '',
  174. upper_limit: '',
  175. sort: 0,
  176. });
  177. $('#datetime').val('');
  178. $('#xmSelect').val('');
  179. XMSelect.setValue([]);
  180. });
  181. // $('input[name="sort"]').on('change', function () {
  182. // if (!this.value || this.value < 0) {
  183. // this.value = 0;
  184. // } else if (this.value > 99999) {
  185. // this.value = 99999;
  186. // } else {
  187. // this.value = parseInt(this.value);
  188. // }
  189. // });
  190. })();
  191. </script>
  192. {/block}