product_stu.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. <div class="main-content-inner">
  2. <!-- 导航栏开始-->
  3. <?php include(Yii::app()->basePath.'/views/layouts/view_production_navigation.php');?>
  4. <!-- 导航栏结束-->
  5. <div class="page-content">
  6. <div class="row" style="margin:0px">
  7. <div class="col-xs-12">
  8. <!-- PAGE CONTENT BEGINS -->
  9. <div id="dynamic-table_wrapper" class="dataTables_wrapper form-inline no-footer">
  10. <div class="row">
  11. <div class="col-xs-10">
  12. <form method="get" id="form1" action="<?php echo $this->createUrl("junior/product_stu",array("cid" => $classId,"eid"=>$examId,"type"=>$type));?>">
  13. <div class="dataTables_length" style="margin: 6px 0px;">
  14. <div class="dataTables_length">
  15. <label><input type="text" class="form-control input-sm" placeholder="请输入学生姓名" name="sname" value="<?php echo $sname;?>"></label>
  16. <button style="padding:4px 12px;"class="label-primary-s bth-s">搜索</button>
  17. </div>
  18. </div>
  19. </form>
  20. </div>
  21. <div class="col-xs-2">
  22. <div class="dataTables_filter" id="dynamic-table_filter" style="padding-top:15px">
  23. <a href="javascript:void(0);" class="btn label-primary-green btn-sm" id="selectPrint">
  24. <i style="font-style: normal;" class="fa fa-print"></i> 下载
  25. </a>
  26. </div>
  27. </div>
  28. </div>
  29. <div class="row">
  30. <div class="col-xs-12" style="font-weight:bold;padding:0px 15px">
  31. <?php echo isset($name)?$name:'';?>
  32. </div>
  33. </div>
  34. <table id="dynamic-table" class="table table-striped table-bordered table-hover dataTable no-footer DTTT_selectable" style="font-size:12px">
  35. <thead>
  36. <tr>
  37. <th class="center">
  38. <input type="checkbox" class="ace selectAll">
  39. </th>
  40. <th>序号</th>
  41. <th>名称</th>
  42. <th>学生名称</th>
  43. <th>学生编号</th>
  44. <th>PDF</th>
  45. <th>下载功能</th>
  46. </tr>
  47. </thead>
  48. <tbody>
  49. <?php if(isset($list) && $list):foreach($list as $k=>$rt):?>
  50. <tr>
  51. <td class="center">
  52. <?php if (($rt['is_pdf'] == 1)) { ?>
  53. <input type="checkbox" class="ace myselect" value="<?php echo $rt['stu_id'];?>" stnm="<?php echo $rt['stu_name'];?>">
  54. <?php } else { ?>
  55. <input type="checkbox" disabled='disabled' class="ace myselect" value="<?php echo $rt['stu_id'];?>" stnm="<?php echo $rt['stu_name'];?>">
  56. <?php } ?>
  57. </td>
  58. <td><?php echo $k;?></td>
  59. <td><?php echo $rt['name'];?></td>
  60. <td><?php echo $rt['stu_name'];?></td>
  61. <td><?php echo $rt['stu_id'];?></td>
  62. <td>
  63. <?php if ($rt['is_pdf'] == 0): ?>
  64. <span class="label label-sm label-danger" style="font-size:12px">未生成</span> <!--红-->
  65. <?php elseif ($rt['is_pdf'] == 1): ?>
  66. <span class="label label-sm label-success" style="font-size:12px">已生成</span><!--绿-->
  67. <?php elseif ($rt['is_pdf'] == 9): ?>
  68. <span class="label label-sm" style="font-size:12px;background-color:gray;">已删除</span><!--灰-->
  69. <?php else: ?>
  70. <span class="label label-sm" style="font-size:12px;background-color:gray;">未知状态</span><!--灰-->
  71. <?php endif; ?>
  72. </td>
  73. <td>
  74. <?php
  75. if(isset($limitstu)){
  76. if($limitstu==0){
  77. echo '<span class="label label-sm label-success" style="font-size:12px">已开通</span>';
  78. }elseif($limitstu==-1){
  79. echo '<span class="label label-sm label-danger" style="font-size:12px">未开通</span>';
  80. }else{
  81. // if(isset($limitstu[$rt['stu_id']])){
  82. if(is_array($limitstu) && in_array($rt['stu_id'],$limitstu,true)){
  83. echo '<span class="label label-sm label-success" style="font-size:12px">已开通</span>';
  84. }else{
  85. echo '<span class="label label-sm label-danger" style="font-size:12px">未开通</span>';
  86. }
  87. }
  88. }else{
  89. echo '<span class="label label-sm label-danger" style="font-size:12px">未开通</span>';
  90. }
  91. ?>
  92. </td>
  93. </tr>
  94. <?php endforeach;else:?>
  95. <tr><td colspan="6">暂无数据!</td></tr>
  96. <?php endif;?>
  97. </tbody>
  98. </table>
  99. </div>
  100. <input type="hidden" name="examId" id="examId" value="<?php echo $examId;?>" />
  101. <input type="hidden" name="classId" id="classId" value="<?php echo $classId;?>" />
  102. <!-- PAGE CONTENT ENDS -->
  103. </div>
  104. </div>
  105. </div>
  106. </div>
  107. <script type="text/javascript">
  108. html = ""+
  109. '<div style="padding:20px 30px 0px 30px">'+
  110. '<div style="padding:8px 0;">请复制下方链接下载<?php echo $desc;?>。</div>'+
  111. '<div id="downloadUrl" style="white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:455px;"></div>'+
  112. '<div class="row" style="margin:30px auto 0px auto;text-align:center"><button id="confirm" class="label-primary-s bth-s" style="padding:4px 12px;margin:5px 0 10px 15px;background:gray;border-color:gray;">关闭</button>'+
  113. '</div>'+
  114. '</div>'+
  115. "";
  116. $(function(){
  117. // 全选\反选
  118. $(".selectAll").on('click',function(event){
  119. if ($(this).prop("checked")) {
  120. var s_obj = $(".myselect");
  121. var s_len = s_obj.length;
  122. for (var i=0;i<s_len;i++) {
  123. if (!s_obj[i].disabled) {
  124. s_obj[i].checked=true;
  125. }
  126. }
  127. } else {
  128. $(".myselect").prop("checked",false);
  129. }
  130. });
  131. //
  132. //
  133. $("#selectPrint").click(function(){
  134. var examId = $("#examId").val();
  135. var classId = $("#classId").val();
  136. // 判断是否有选中
  137. if (!$("input[class='ace myselect']").is(':checked')) {
  138. layer.msg('请至少选择一个学生!');return false;
  139. }
  140. layer.msg("您确定下载产品吗?", {
  141. time: 0,
  142. btn: ['确定', '取消'],
  143. yes: function(index){
  144. layer.close(index);
  145. var result = [];
  146. $(".myselect").each(function(m,n){
  147. if ($(this).prop('checked')) {
  148. if ($(this).val() && $(this).attr("stnm")) {
  149. result.push($(this).val());
  150. }
  151. }
  152. })
  153. if (result.length < 1) {
  154. layer.msg('未找到要下载的学生!');return false;
  155. }
  156. $.ajax({
  157. url: "<?php echo $this->createUrl('productdownexam/getUrl');?>",
  158. type: "GET",
  159. dataType: "json",
  160. data: {"examId": examId,"classId":classId, "studentsIds":result, "type":<?php echo $type;?>},
  161. timeout: <?php echo Yii::app()->params["product_download_time_limit"];?>,
  162. beforeSend:function(){
  163. layer.msg("下载中请稍后...",{"time": <?php echo Yii::app()->params["product_download_time_limit"];?>});
  164. },
  165. error: function (jqXHR, textStatus, errorThrown) {
  166. if(textStatus=="timeout"){
  167. $.ajax({
  168. type:'GET',
  169. url: "<?php echo $this->createUrl("productdownexam/addTask");?>",
  170. data: {"examId": examId,"classId":classId, "studentsIds":result, "type":<?php echo $type;?>},
  171. dataType: "json",
  172. success:function (data) {
  173. layer.alert('文件正在打包,请去右上角“下载”窗口获取下载链接!',{
  174. icon: 1,
  175. yes:function(){
  176. layer.closeAll();
  177. }
  178. });
  179. }
  180. })
  181. }else {
  182. layer.msg('返回失败!',{
  183. icon: 5
  184. }, function(){
  185. layer.closeAll();
  186. });
  187. }
  188. },
  189. success: function (data){
  190. layer.closeAll();
  191. if(data.success == 1||data.success == 2){
  192. layer.open({
  193. type: 1,
  194. area: ['550px', '220px'],
  195. title: "下载产品",
  196. content: html,
  197. success: function(index, layerObj){
  198. jQuery("#downloadUrl").html('下载地址:<span style=""><input id="url" type="text" size="40" readonly value="'+data.downloadPath+'" /></span><button id="copy" class="label-primary-s bth-s" style="padding:4px 12px;margin:5px 0 10px 15px;">全选</button>');
  199. jQuery("#confirm, #cancel").on("click", function(){
  200. layer.close(layerObj);
  201. });
  202. jQuery("#copy").on("click", function(){
  203. jQuery("#url").select();
  204. });
  205. },
  206. end: function(){
  207. }
  208. });
  209. }else if(data.success == 3){
  210. layer.alert('文件正在打包,请去右上角“下载”窗口获取下载链接!',{
  211. icon: 1,
  212. yes:function(){
  213. layer.closeAll();
  214. }
  215. });
  216. }
  217. else if(data.success == 0){
  218. layer.msg(data.message, {"time": 3000});
  219. }
  220. },
  221. });
  222. }
  223. });
  224. });
  225. })
  226. </script>