rock_kaoqin_sjpb.php 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. <?php defined('HOST') or die ('not access');?>
  2. <script>
  3. $(document).ready(function(){
  4. {params}
  5. var atype=params.atype,columna=[],chagnedtarr={},lbob=false,pblx=0;if(atype)atype='';
  6. var column = [{
  7. text:'部门',dataIndex:'deptname',align:'left',sortable:true
  8. },{
  9. text:'姓名',dataIndex:'name',sortable:true
  10. }];
  11. for(var i=1;i<=28;i++){
  12. columna.push({
  13. text:''+i+'',
  14. dataIndex:'day'+i+'',
  15. });
  16. }
  17. var a = $('#view_{rand}').bootstable({
  18. tablename:'admin',fanye:true,url:publicstore('{mode}','{dir}'),storeafteraction:'pbkqdistafter',storebeforeaction:'pbkqdistbefore',params:{'pblx':0,'atype':atype},
  19. columns:[].concat(column,columna),
  20. itemclick:function(d,oi, e){
  21. var e1 = e.target;
  22. if(e1.nodeName.toLowerCase()=='td'){
  23. var o1 = $(e1),row = o1.attr('row'),cell = parseFloat(o1.attr('cell'));
  24. if(cell>=2){
  25. var ke = 'a_'+row+'_'+cell+'';
  26. if(chagnedtarr[ke]){
  27. o1.css('background','');
  28. chagnedtarr[ke] = false;
  29. }else{
  30. o1.css('background','#94DDFC');
  31. chagnedtarr[ke] = o1;
  32. }
  33. }
  34. }
  35. },
  36. loadbefore:function(d){
  37. var cs = [],i;
  38. for(i in column)cs.push(column[i]);
  39. var warr=['日','一','二','三','四','五','六'],w=parseFloat(d.week),tsa;
  40. for(i=1;i<=d.maxjg;i++){
  41. if(i>1)w++;
  42. if(w>6)w=0;
  43. tsa = ''+i+'<br>('+warr[w]+')';
  44. if(w==0||w==6)tsa='<font color="#ff6600">'+tsa+'</font>';
  45. cs.push({
  46. text:tsa,
  47. dataIndex:'day'+i+''
  48. });
  49. }
  50. a.setColumns(cs);
  51. },
  52. load:function(d){
  53. var str='提示:其中空白为休息日,0:未设置',gzrows=d.gzrows;
  54. var rda = [{
  55. name:'设置为休息日',lx:0,id:0
  56. },{
  57. name:'取消休息日',lx:1,id:0
  58. },{
  59. name:'设置为工作日',lx:2,id:0
  60. },{
  61. name:'取消工作日',lx:3,id:0
  62. }];
  63. for(var i=0;i<gzrows.length;i++){
  64. str+=','+gzrows[i].id+':'+gzrows[i].name+'';
  65. rda.push({name:'设置规则为:'+gzrows[i].name+'',lx:4,id:gzrows[i].id});
  66. }
  67. rda.push({name:'取消规则',id:5,lx:5});
  68. $('#guistr_{rand}').html(str);
  69. if(!lbob){
  70. $('#downbtn_{rand}').rockmenu({
  71. width:230,top:35,donghua:false,
  72. data:rda,
  73. itemsclick:function(d, i){
  74. c.setdownss(d);
  75. }
  76. });
  77. }
  78. },
  79. beforeload:function(){
  80. chagnedtarr={};
  81. }
  82. });
  83. var c = {
  84. search:function(){
  85. var s=get('key_{rand}').value;
  86. a.setparams({key:s,dt1:get('dt1_{rand}').value},true);
  87. },
  88. clickdt:function(o1, lx){
  89. $(o1).rockdatepicker({initshow:true,view:'month',inputid:'dt'+lx+'_{rand}'});
  90. },
  91. daochu:function(){
  92. a.exceldown('考勤时间排班('+get('dt1_{rand}').value+')');
  93. },
  94. xuanzeq:function(){
  95. for(var i in chagnedtarr){
  96. if(chagnedtarr[i])chagnedtarr[i].css('background','');
  97. }
  98. chagnedtarr={};
  99. },
  100. //保存
  101. setdownss:function(d){
  102. if(pblx=='0'){js.msg('msg','请先选择根据组/人员来设置');return;}
  103. var str='',i,j,kes,o,row,cell,kesa,da,can=[],mon=get('dt1_{rand}').value,type=d.lx;
  104. for(kes in chagnedtarr){
  105. o = chagnedtarr[kes];
  106. if(o){
  107. kesa = kes.split('_');
  108. row = parseFloat(kesa[1]);
  109. cell = parseFloat(kesa[2]);
  110. da = a.getData(row);
  111. can.push({receid:da.id,dt:mon+'-'+(cell-1)+'',plx:pblx,type:type,mid:d.id});
  112. }
  113. }
  114. var cans={},len=can.length;
  115. if(len==0){js.msg('msg','没有选中单元格来设置');return;}
  116. for(i=0;i<len;i++){
  117. for(j in can[i])cans[''+j+'_'+i+'']=can[i][j];
  118. }
  119. cans.len = len;
  120. js.ajax(js.getajaxurl('setpaiban','{mode}','{dir}'),cans, function(s){
  121. a.reload();
  122. },'post',false,'标识中,标识成功');
  123. },
  124. changeplx:function(){
  125. var val = get('plx_{rand}').value;
  126. pblx = val;
  127. get('downbtn_{rand}').disabled=(pblx=='0')?true:false;
  128. a.setparams({key:'','pblx':val},true);
  129. }
  130. };
  131. $('#dt1_{rand}').val(js.now('Y-m'));
  132. js.initbtn(c);
  133. $('#plx_{rand}').change(function(){
  134. c.changeplx();
  135. });
  136. });
  137. </script>
  138. <div>
  139. <table width="100%"><tr>
  140. <td nowrap>月份&nbsp;</td>
  141. <td nowrap>
  142. <div style="width:120px" class="input-group">
  143. <input placeholder="月份" readonly class="form-control" id="dt1_{rand}" >
  144. <span class="input-group-btn">
  145. <button class="btn btn-default" click="clickdt,1" type="button"><i class="icon-calendar"></i></button>
  146. </span>
  147. </div>
  148. </td>
  149. <td style="padding-left:10px">
  150. <select class="form-control" style="width:170px" id="plx_{rand}">
  151. <option value="0">查看人员排班情况</option>
  152. <option value="1">根据组来排班(设置)</option>
  153. <option value="2">根据人员来排班(设置)</option>
  154. </select>
  155. </td>
  156. <td style="padding-left:10px">
  157. <input class="form-control" style="width:150px" id="key_{rand}" placeholder="姓名/部门">
  158. </td>
  159. <td style="padding-left:10px">
  160. <button class="btn btn-default" click="search" type="button">搜索</button>
  161. </td>
  162. <td style="padding-left:10px">
  163. </td>
  164. <td style="padding-left:5px">
  165. </td>
  166. <td width="80%"></td>
  167. <td align="right" nowrap>
  168. <button class="btn btn-default" id="downbtn_{rand}" disabled type="button">选中标识为 <i class="icon-angle-down"></i></button>&nbsp;&nbsp;
  169. <button class="btn btn-default" click="xuanzeq" type="button">取消选择</button>&nbsp;&nbsp;
  170. <button class="btn btn-default" click="daochu" type="button">导出</button>
  171. </td>
  172. </tr></table>
  173. </div>
  174. <div class="blank10"></div>
  175. <div id="view_{rand}" style="cursor:default"></div>
  176. <div class="tishi" id="guistr_{rand}">提示:</div>
粤ICP备19079148号