1) dede\templets\content_list.htm  退回  2) dede\js\list.js function checkArc_tuihui(aid){ resion = prompt("请输入退回原因:",""); if (resion != null){ var qstr=getCheckboxItem(); if(aid==0) aid = getOneItem(); location="archives_do.php?aid="+aid+"&dopost=checkArchives_tuihui&qstr="+qstr+"&resion="+resion; }else{ alert("你按了[取消]按钮"); } } 3) dede\archives_do.php else if($dopost=="checkArchives_tuihui") { CheckPurview('a_Check,a_AccCheck,sys_ArcBatch'); require_once(DEDEADMIN."/inc/inc_archives_functions.php"); if( !empty($aid) && empty($qstr) ) $qstr = $aid; if($qstr=='') { ShowMsg("参数无效!",$ENV_GOBACK_URL); exit(); } $arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr)); $query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `#@__arctiny` arc LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid LEFT JOIN `#@__channeltype` ch ON ch.id=tp.channeltype WHERE arc.id in($arcids) "; $dsql->SetQuery($query); $dsql->Execute('ckall'); while($row = $dsql->GetArray('ckall')) { $aid = $row['id']; $maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) ); $dsql->ExecuteNoneQuery("UPDATE `#@__arctiny` SET arcrank='-2' WHERE id='$aid' "); if($row['issystem']==-1) { $dsql->ExecuteNoneQuery("UPDATE `".trim($row['addtable'])."` SET arcrank='-2' WHERE aid='$aid' "); } else { $resion = mysql_real_escape_string($_GET["resion"]); $dsql->ExecuteNoneQuery("UPDATE `$maintable` SET arcrank='-2', title = concat(title,'(退回原因:".$resion.")'),dutyadmin='".$cuserLogin->getUserID()."' WHERE id='$aid' "); } $dsql->ExecuteNoneQuery("UPDATE `#@__taglist` SET arcrank='-2' WHERE aid='$aid' "); $pageurl = MakeArt($aid,false); } ShowMsg("成功退回指定的文档!",$ENV_GOBACK_URL); exit(); }