1
0

rock_page.php 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361
  1. //<script>
  2. var c = {
  3. optalign:'',
  4. opttype:'',
  5. reload:function(){
  6. a.reload();
  7. },
  8. clickwin:function(o1,lx){
  9. var id=0;
  10. if(lx==1)id=a.changeid;
  11. openinput(modename,modenum,id,'opegs{rand}');
  12. },
  13. view:function(){
  14. var d=a.changedata;
  15. if(d.id)openxiangs(modename,modenum,d.id,'opegs{rand}');
  16. },
  17. searchbtn:function(){
  18. this.search({});
  19. },
  20. search:function(cans){
  21. var s=get('key_{rand}').value,zt='';
  22. if(get('selstatus_{rand}'))zt=get('selstatus_{rand}').value;
  23. var dke = {key:s,keystatus:zt,search_value:'',xhfields:''},szd='';
  24. if(get('fields_{rand}'))szd = get('fields_{rand}').value;
  25. if(szd){
  26. dke.xhfields = szd;
  27. dke.xhlike = get('like_{rand}').value;
  28. dke.xhkeygj = get('keygj_{rand}').value;
  29. if(this.soutype=='select' || this.soutype=='rockcombo')dke.xhkeygj = get('selkey_{rand}').value;
  30. dke.xhkeygj = jm.base64encode(dke.xhkeygj);
  31. dke.key = '';
  32. }
  33. var canss = js.apply(dke, cans);
  34. a.setparams(canss,true);
  35. },
  36. searchhigh:function(){
  37. new highsearchclass({
  38. modenum:modenum,
  39. oncallback:function(d){
  40. c.searchhighb(d);
  41. }
  42. });
  43. },
  44. searchhighb:function(d){
  45. d.key='';
  46. d.xhfields='';
  47. d.search_value='';
  48. get('key_{rand}').value='';
  49. a.setparams(d,true);
  50. },
  51. searchuname:function(d){
  52. js.getuser({
  53. type:'deptusercheck',
  54. title:'<?=lang('搜索')?>'+d.name,
  55. changevalue:this.search_value,
  56. callback:function(sna,sid){
  57. c.searchunames(d,sna,sid);
  58. }
  59. });
  60. },
  61. search_value:'',
  62. searchunames:function(d,sna,sid){
  63. get('key_{rand}').value=sna;
  64. this.search_value = sid;
  65. var cs = {key:'',xhfields:'','search_fields':d.fields,'search_value':sid};
  66. a.setparams(cs,true);
  67. },
  68. daochu:function(o1,lx,lx1,e){
  69. new publicdaochuobj({
  70. 'objtable':a,
  71. 'modename':modename,
  72. 'fieldsarr':fieldsarr,
  73. 'modenum':modenum,
  74. 'modenames':modenames,
  75. 'isflow':isflow,
  76. 'btnobj':o1
  77. });
  78. },
  79. getacturl:function(act){
  80. return js.getajaxurl(act,'mode_'+modenum+'|input','flow',{'modeid':modeid});
  81. },
  82. changatype:function(o1,lx){
  83. $("button[id^='changatype{rand}']").removeClass('active');
  84. $('#changatype{rand}_'+lx+'').addClass('active');
  85. a.setparams({atype:lx},true);
  86. var tit = $(o1).html();if(tit.indexOf(modename)<0)tit=modename+'('+tit+')';
  87. nowtabssettext(tit);
  88. },
  89. init:function(){
  90. $('#key_{rand}').keyup(function(e){
  91. if(e.keyCode==13)c.searchbtn();
  92. });
  93. $('#keygj_{rand}').keyup(function(e){
  94. if(e.keyCode==13)c.searchbtn();
  95. });
  96. this.initpage();
  97. this.soudownobj = $('#downbtn_{rand}').rockmenu({
  98. width:120,top:35,donghua:false,
  99. data:[{name:'<?=lang('高级搜索')?>',lx:0}],
  100. itemsclick:function(d, i){
  101. if(d.lx==0)c.searchhigh();
  102. if(d.lx==1)c.printlist();
  103. if(d.lx==2)c.setfieldslist();
  104. if(d.lx==3)c.searchuname(d);
  105. }
  106. });
  107. $('#fields_{rand}').change(function(){
  108. c.changefields();
  109. });
  110. },
  111. initpage:function(){
  112. },
  113. initpagebefore:function(){
  114. },
  115. onloadbefore:function(){},
  116. oncolumns:function(d){return d},
  117. loaddatabefore:function(d){
  118. var das = d.listinfo;
  119. if(das){
  120. isflow = das.isflow;
  121. modeid = das.modeid;
  122. modename = das.modename;
  123. modenames = das.modenames;
  124. fieldsarr = das.fieldsarr;
  125. this.fieldzarr = das.fieldzarr; //子表搜索
  126. fieldsselarr = das.fieldsselarr;
  127. chufarr = das.chufarr;
  128. if(das.modetable)a.setCans({tablename:das.modetable});
  129. this.initcolumns(true);
  130. }
  131. this.onloadbefore(d);
  132. },
  133. loaddata:function(d){
  134. this.setdownsodata(d.souarr);
  135. if(d.modeid)modeid = d.modeid;
  136. if(modeid>101 && d.loadci==1 && (!d.atypearr || d.atypearr.length==0))js.confirm('<?=lang('notcolumns','base')?>',function(){window.open('<?=URLY?>view_columns.html')});
  137. if(!d.atypearr)return;
  138. var addobj = get('addbtn_{rand}');
  139. addobj.disabled=(d.isadd!=true);
  140. get('daobtn_{rand}').disabled=(d.isdaochu!=true);
  141. if(d.isdaochu)$('#daobtn_{rand}').show();
  142. if(d.isdaoru)$('#daoruspan_{rand}').show();
  143. var d1 = d.atypearr,len=d1.length,i,str='';
  144. for(i=0;i<len;i++){
  145. str+='<button class="btn btn-default" click="changatype,'+d1[i].num+'" id="changatype{rand}_'+d1[i].num+'" type="button">'+d1[i].name+'</button>';
  146. }
  147. $('#changatype{rand}').html(str);
  148. $('#changatype{rand}_'+atype+'').addClass('active');
  149. js.initbtn(c);
  150. if(d.isadd){
  151. addobj.title = '<?=lang('右键可新窗口打开新增')?>';
  152. $(addobj).on('contextmenu', function(e) {
  153. e.preventDefault();
  154. js.open('?a=lu&m=input&d=flow&num='+modenum+'&callback=opegs{rand}',950,500);
  155. });
  156. }
  157. },
  158. setdownsodata:function(darr){
  159. var ddata = [{name:'<?=lang('高级搜索')?>',lx:0}],dsd,i;
  160. if(darr)for(i=0;i<darr.length;i++){
  161. dsd = darr[i];
  162. dsd.lx=3;
  163. ddata.push(dsd);
  164. }
  165. if(admintype==1)ddata.push({name:'<?=lang('自定义列显示')?>',lx:2});
  166. ddata.push({name:'<?=lang('打印')?>',lx:1});
  167. this.soudownobj.setData(ddata);
  168. },
  169. setcinfo:{},
  170. setcolumns:function(fid, cnas){
  171. this.setcinfo[fid]=cnas;
  172. var d = false,i,ad=bootparams.columns,len=ad.length,oi=-1;
  173. for(i=0;i<len;i++){
  174. if(ad[i].dataIndex==fid){
  175. d = ad[i];
  176. oi= i;
  177. break;
  178. }
  179. }
  180. if(d){
  181. d = js.apply(d, cnas);
  182. bootparams.columns[oi]=d;
  183. }
  184. },
  185. daoru:function(){
  186. window['managelist'+modenum+''] = a;
  187. addtabs({num:'daoru'+modenum+'',url:'flow,input,daoru,modenum='+modenum+'',icons:'plus',name:'<?=lang('导入')?>'+modename+''});
  188. },
  189. initcolumns:function(bots){
  190. var num = 'columns_'+modenum+'_'+pnum+'',d=[],d1,d2={},i,len=fieldsarr.length,ebo,bok,sa=[{name:'<?=lang('默认搜索')?>',fields:'','inputtype':'dev'}];
  191. var nstr= fieldsselarr[num];if(!nstr)nstr='';
  192. if(nstr)nstr=','+nstr+',';
  193. if(nstr=='' && isflow>0){
  194. var nes = chufarr.base_name;if(!nes)nes='<?=lang('申请人')?>';
  195. d.push({text:nes,dataIndex:'base_name',sortable:true});
  196. nes = chufarr.base_deptname;if(!nes)nes='<?=lang('申请人部门')?>';
  197. d.push({text:nes,dataIndex:'base_deptname',sortable:true});
  198. }
  199. var celleditor = 0;
  200. for(i=0;i<len;i++){
  201. d1 = fieldsarr[i];
  202. bok= false;
  203. if(nstr==''){
  204. if(d1['islb']=='1')bok=true;
  205. }else{
  206. if(nstr.indexOf(','+d1.fields+',')>=0)bok=true;
  207. }
  208. if(bok){
  209. ebo = 0;
  210. d2={text:d1.name,dataIndex:d1.fields};
  211. if(d1.ispx=='1')d2.sortable=true;
  212. if(d1.width)d2.width=d1.width;
  213. if(d1.isalign=='1')d2.align='left';
  214. if(d1.isalign=='2')d2.align='right';
  215. if(d1.iseditlx=='1')ebo=1;
  216. if(d1.iseditlx=='2' && admintype=='1')ebo=1;
  217. if(d1.iseditlx=='3' && admintype=='1' && adminid=='1')ebo=1;
  218. if(ebo==1){
  219. d2.editor = true;
  220. celleditor= 1;
  221. d2.type = d1.fieldstype;
  222. if(d1.fieldstype=='select' || d1.fieldstype=='rockcombo'){
  223. d2.type='select';
  224. d2.store=this.editorstore(d1.store);
  225. }
  226. }
  227. d.push(d2);
  228. }
  229. if(d1['issou']=='1'){
  230. d2={name:d1.name,fields:d1.fields,inputtype:d1.fieldstype,store:d1.store};
  231. sa.push(d2);
  232. }
  233. }
  234. if(isflow>0)d.push({text:'<?=lang('流程')?><?=lang('状态')?>',dataIndex:'statustext'});
  235. if(nstr=='' || nstr.indexOf(',caozuo,')>=0){
  236. d1 = {text:'',opttype:this.opttype,dataIndex:'caozuo',callback:'opegs{rand}'};
  237. (this.optalign=='left')?d.unshift(d1):d.push(d1);
  238. }
  239. for(i=0;i<d.length;i++)if(this.setcinfo[d[i].dataIndex])d[i] = js.apply(d[i],this.setcinfo[d[i].dataIndex]);
  240. d = this.oncolumns(d);
  241. if(celleditor==1)a.setCans({celleditor:true});
  242. bootparams.columns = d;
  243. if(bots)a.setColumns(d);
  244. d1 = this.fieldzarr;
  245. if(d1){
  246. for(i=0;i<d1.length;i++){
  247. sa.push({name:d1[i].name,fields:d1[i].fields,inputtype:d1[i].fieldstype,store:d1[i].store});
  248. }
  249. }
  250. this.souarr = sa;
  251. get('fields_{rand}').length=0;
  252. js.setselectdata(get('fields_{rand}'),sa,'fields');
  253. this.changefields();
  254. return d;
  255. },
  256. editorstore:function(d){
  257. var d1=[],i;
  258. if(d)for(i=0;i<d.length;i++)d1.push([d[i].value,d[i].name]);
  259. return d1;
  260. },
  261. changefields:function(){
  262. var o1 = get('fields_{rand}');
  263. if(!o1)return;
  264. var val = o1.value;
  265. var i,xa=false,len=this.souarr.length;
  266. for(i=0;i<len;i++){
  267. if(this.souarr[i].fields==val)xa=this.souarr[i];
  268. }
  269. if(!xa)return;
  270. var o2 = get('like_{rand}');
  271. o2.disabled=false;
  272. this.soutype = xa.inputtype;
  273. if(xa.inputtype=='dev'){
  274. $('#keygj_{rand}').hide();
  275. $('#key_{rand}').show();
  276. $('#selkey_{rand}').hide();
  277. o2.value='0';
  278. o2.disabled=true;
  279. }else if(xa.inputtype=='select' || xa.inputtype=='rockcombo'){
  280. $('#keygj_{rand}').hide();
  281. $('#key_{rand}').hide();
  282. $('#selkey_{rand}').show();
  283. o2.value='1';
  284. var o3 = get('selkey_{rand}');
  285. $(o3).html('<option value="">-<?=lang('请选择')?>-</option>');
  286. js.setselectdata(o3,xa.store,'value');
  287. }else{
  288. $('#keygj_{rand}').show();
  289. $('#selkey_{rand}').hide();
  290. $('#key_{rand}').hide();
  291. o2.value='0';
  292. }
  293. },
  294. setparams:function(cs){
  295. var ds = js.apply({},cs);
  296. a.setparams(ds);
  297. },
  298. storeurl:function(){
  299. var url = this.getacturl('publicstore')+'&pnum='+pnum+'';
  300. return url;
  301. },
  302. printlist:function(){
  303. var rnd = this.printrnd;
  304. if(!rnd){
  305. rnd = 'table'+js.getrand();
  306. window[rnd] = a;
  307. this.printrnd = rnd;
  308. }
  309. window.open('?d=public&m=print&table='+rnd+'&modenum='+modenum+'&modename='+jm.base64encode(modename)+'');
  310. },
  311. getbtnstr:function(txt, click, ys, ots,alx){
  312. if(!ys)ys='default';
  313. if(!ots)ots='';
  314. var str='<button class="btn btn-'+ys+'" id="btn'+click+'_{rand}" click="'+click+'" '+ots+' type="button">'+txt+'</button>';
  315. if(alx=='right')this.addrightbtn(str);
  316. return str;
  317. },
  318. addrightbtn:function(str){
  319. $('#tdright_{rand}').prepend(str+'&nbsp;&nbsp;');
  320. },
  321. setfieldslist:function(){
  322. new highsearchclass({
  323. modenum:modenum,
  324. modeid:modeid,
  325. type:1,
  326. isflow:isflow,
  327. pnum:pnum,atype:atype,
  328. fieldsarr:fieldsarr,
  329. fieldsselarr:fieldsselarr,
  330. oncallback:function(str){
  331. fieldsselarr[this.columnsnum]=str;
  332. c.initcolumns(true);
  333. c.reload();
  334. }
  335. });
  336. }
  337. };
  338. var bootparams = {
  339. fanye:true,modenum:modenum,listcreate:true,modename:modename,statuschange:false,tablename:jm.base64decode(listname),
  340. url:c.storeurl(),storeafteraction:'storeaftershow',storebeforeaction:'storebeforeshow',optobj:c,syspnum:pnum,
  341. params:{atype:atype},
  342. columns:[{text:"fields",dataIndex:"face"},{
  343. text:'',dataIndex:'caozuo',callback:'opegs{rand}'
  344. }],
  345. itemdblclick:function(){
  346. c.view();
  347. },
  348. load:function(d){
  349. c.loaddata(d);
  350. },
  351. loadbefore:function(d){
  352. c.loaddatabefore(d);
  353. }
  354. };
  355. c.initcolumns(false);
  356. opegs{rand}=function(){
  357. c.reload();
  358. }
粤ICP备19079148号