📄 clientservice.java
字号:
package com.doone.fj1w.bbs;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Map;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import com.doone.fj1w.fjmgr.config.UpImageBean;
import com.altova.types.SchemaBoolean;
import com.doone.data.DacClient;
import com.doone.data.DataRow;
import com.doone.data.DataTable;
import com.doone.data.Field;
import com.doone.fj1w.common.WSClient;
import com.doone.fj1w.fjmgr.sysmgr.uurm.XmlService;
import com.doone.fj1w.fjmgr.tree.rootType;
import com.doone.fj1w.fjmgr.tree.treeDoc;
import com.doone.iossp.EMessage;
import com.doone.iossp.FormBody;
import com.doone.iossp.MessageEncoding;
import com.doone.util.BufferCache;
import com.doone.util.FileLogger;
import com.doone.uurm.Purview;
import com.doone.uurm.PurviewMode;
import com.doone.uurm.Sys_Purview;
import com.doone.uurm.WebAuth;
public class ClientService {
public static String getBoardTree(ServletRequest request, ServletResponse response, Map param) {
String boardTree = null;
try {
String sPid = (String) param.get("PID");
long parentId = -1;
if (sPid != null) {
parentId = Long.parseLong(sPid);
}
DataTable dt = BBSFactory.getInstance(request).getBoardTree(parentId);
String[] fields = new String[5];
fields[0] = "PURVIEWID";
fields[1] = "UPPURVIEWID";
fields[2] = "PURVIEWCODE";
fields[3] = "PURVIEWNAME";
fields[4] = "PURVIEWOPER";
treeDoc doc = new treeDoc();
rootType root = new rootType();
root.addopen_action(new SchemaBoolean(true));
root.adddbl_click(new SchemaBoolean(true));
root.addtext("ROOT");
doc.setEncoding("GBK");
doc.setRootElementName("", "root");
doc.setSchemaLocation("tree.xsd");
if (parentId < 0)
parentId = Sys_Purview.getPurviewIdByCode("BBS");
rootType menu = (rootType) XmlService.getXmlFromTable(root, dt, fields, Long.toString(parentId),
true);
boardTree = doc.saveToString(menu);
}
catch (Exception ex) {
FileLogger.getLogger().warn(ex.getMessage(), ex);
boardTree = null;
}
return boardTree;
}
public static String getHotIntroList(ServletRequest request, ServletResponse response, Map param) {
StringBuffer ret = new StringBuffer();
try {
int pageSize = Integer.parseInt((String) param.get("pageSize"));
int currentPage = Integer.parseInt((String) param.get("currentPage"));
String upCode = (String) param.get("upCode");
String path = (String) param.get("outsidePath");
/*wull 增加外面传进来的URL 2006-3-14*/
String url = "Content.jsp";
if(path != null)url = path;
FileLogger log = new FileLogger();
if (pageSize == -1 || currentPage == -1) {
log.info("页面参数为空。");
} else {
log.info("pageSize:" + String.valueOf(pageSize));
log.info("currentPage:" + String.valueOf(currentPage));
log.info("upCode:" + upCode);
}
WSClient ws = WSClient.getInstance("QueryApp", "getHotIntroList");
ws.setField("upCode", upCode);
ws.setField("currentPage", new Integer(currentPage));
ws.setField("pageSize", new Integer(pageSize));
String str = ws.Call();
EMessage msg = new EMessage(str);
Field[] fld = msg.getFields();
if (fld != null && fld.length == 2) {
// 如果返回消息是错误消息,则引发异常。
if (fld[0].getFieldName().toLowerCase().equals("actionname")
&& fld[0].getString().toLowerCase().equals("error")) {
String messageName = fld[1].getFieldName().toLowerCase();
String messageValue = fld[1].getString().toLowerCase();
if (messageName.equals("message")) {
throw new RuntimeException(messageValue);
}
}
}
if (!msg.getEncoding().equalsIgnoreCase(MessageEncoding.XML_TEXT))
throw new RuntimeException("消息格式有错,服务器没有返回正确的结果。");
DataTable dt = msg.getDataTableBody();
ret.append("<table>");
if (dt != null) {
for (int i = 0; i < dt.getRows().getCount(); i++) {
DataRow dr = dt.getRow(i);
ret.append("<tr key='" + dr.getString("content_id") + "'>");
boolean isNew = false;
// 添加new标志,现先使用时间来标记。
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, -7);
if (cal.getTimeInMillis() < dr.getDate("create_time").getTime()) {
isNew = true;
}
if ( path != null ) {
ret.append("<TD class='body_td' align='left' width='100%' nowrap='nowrap'>·");
ret.append("<a href='"+url+"?id=");
ret.append(dr.getLong("CONTENT_ID"));
ret.append("' target='HOTCONTENT'");
// 主页上的列表显示,要限制宽带。
ret.append(" title='");
ret.append(dr.getString("TITLE"));
ret.append("'");
ret.append(">");
String sTitle = "【" + dr.getString("BOARDNAME") + "】 " + dr.getString("TITLE");
// sPromotionList.append(getTitleByFixWidth(pages[i].getDesc(), 12));
ret.append("<span style ='cursor:hand;width:");
if ( isNew ) {
ret.append("210px");
}
else {
ret.append("250px");
}
ret.append(";text-overflow:ellipsis;overflow:hidden' title='").append(dr.getString("TITLE")).append("'>");
ret.append(sTitle);
ret.append("</span>");
}
else {
ret.append("<TD class='body_td' align='left' width='100%'>·");
ret.append("<a href='"+url+"?id=");
ret.append(dr.getLong("CONTENT_ID"));
ret.append("' target='HOTCONTENT'");
ret.append(")>");
ret.append("【");
ret.append(dr.getString("BOARDNAME"));
ret.append("】 ");
ret.append(dr.getString("TITLE"));
}
ret.append("</a>");
// 添加new标志,现先使用时间来标记。
if (isNew) {
ret.append(" <img src='../../images/icon/new1.gif' />");
}
ret.append("</TD>");
ret.append("</tr>");
}
}
ret.append("</table>");
} catch (Exception ex) {
FileLogger.getLogger().warn(ex.getMessage(), ex);
throw new RuntimeException(ex);
}
return ret.toString();
}
public static String getRPTTree(ServletRequest request, ServletResponse response, Map param) {
String boardTree = null;
try {
String sPid = (String) param.get("PID");
long parentId = -1;
if (sPid != null) {
parentId = Long.parseLong(sPid);
}
Purview purv = new Purview();
DataTable dt = null;
if (parentId < 0)
parentId = 0;
String[] fields = new String[9];
fields[0] = "PURVIEWID";
fields[1] = "UPPURVIEWID";
fields[2] = "PURVIEWCODE";
WebAuth auth = WebAuth.getInstance((HttpServletRequest) request);
long currPostID = auth.getCurrPostID();
if (currPostID < 0)
currPostID = 1;
if (currPostID == 1) {
// 系统管理员处理,获取所有在用模块的模块信息。
dt = purv.SubList(parentId);
// 移除所有禁用的模块。
int index = 0;
while (index < dt.getRows().getCount()) {
DataRow dr = dt.getRow(index);
if (!dr.getString("STATE").equalsIgnoreCase("E")) {
dt.getRows().remove(dr);
} else {
index++;
}
}
fields[3] = "NAME";
} else {
// 普通管理员,获取管理有权限的相关模块信息。
dt = purv.GetInfoByUserOrg(auth.getUserID(), currPostID);
fields[3] = "PURVIEWNAME";
}
fields[4] = "PURVIEWOPER";
treeDoc doc = new treeDoc();
rootType root = new rootType();
root.addopen_action(new SchemaBoolean(true));
root.adddbl_click(new SchemaBoolean(true));
root.addtext("ROOT");
doc.setEncoding("GBK");
doc.setRootElementName("", "root");
doc.setSchemaLocation("tree.xsd");
rootType menu = (rootType) XmlService.getXmlFromTable(root, dt, fields, Long
.toString(parentId), true);
boardTree = doc.saveToString(menu);
}
catch (Exception ex) {
FileLogger.getLogger().warn(ex.getMessage(), ex);
boardTree = null;
}
return boardTree;
}
public static String getNewContentList(ServletRequest request, ServletResponse response, Map param) {
StringBuffer ret = new StringBuffer();
try {
int pageSize = Integer.parseInt((String) param.get("pageSize"));
int currentPage = Integer.parseInt((String) param.get("currentPage"));
String cityCode = (String) param.get("cityCode");
String sType = (String) param.get("sType");
FileLogger log = new FileLogger();
if (pageSize == -1 || currentPage == -1) {
log.info("页面参数为空。");
}
else {
log.info("pageSize:" + String.valueOf(pageSize));
log.info("currentPage:" + String.valueOf(currentPage));
}
String newsCode="",text="";
if (sType.equals("1"))
{newsCode = "BBS004";//最新动态
text="【最新动态】";
}
if (sType.equals("2"))
{newsCode = "BBS006";//优惠资讯
text="【优惠资讯】";
}
String code = newsCode + String.valueOf(Long.parseLong(cityCode));
long newsID = Sys_Purview.getPurviewIdByCode(code);
if ( currentPage < 0 ) currentPage =0;
if ( pageSize < 1 ) pageSize =100;
DataTable dt =BBSFactory.getContentList(newsID, currentPage,
pageSize);
ret.append("<table>");
if (dt != null) {
for (int i = 0; i < dt.getRows().getCount(); i++) {
DataRow dr = dt.getRow(i);
ret.append("<tr key='" + dr.getString("content_id") + "'>");
ret.append("<TD class='body_td' align='left' width='5%'>");
ret.append(text+dr.getString("Title"));
ret.append("</TD>");
ret.append("</tr>");
}
}
ret.append("</table>");
}
catch (Exception ex) {
FileLogger.getLogger().warn(ex.getMessage(), ex);
throw new RuntimeException(ex);
}
return ret.toString();
}
public static String getPlaCardList(ServletRequest request, ServletResponse response, Map param) {
StringBuffer ret = new StringBuffer();
try {
String sBoardId = (String) param.get("sBoardId");
String sParentId = (String) param.get("sParentId");
String sTextOrImage = (String) param.get("sTextOrImage");
String sMenuCode = (String) param.get("sMenuCode");
String sLinkType = (String) param.get("sLinkType");
// String sType = (String) param.get("sType");
int pageSize = Integer.parseInt((String) param.get("pageSize"));
int currentPage = Integer.parseInt((String) param.get("currentPage"));
FileLogger log = new FileLogger();
if (pageSize == -1 || currentPage == -1) {
log.info("页面参数为空。");
} else {
log.debug("pageSize:" + String.valueOf(pageSize));
log.debug("currentPage:" + String.valueOf(currentPage));
log.debug("boardID:" + sBoardId);
}
UpImageBean contentBean = new UpImageBean();
DataTable contentList = contentBean.getTextContent(sBoardId);//, currentPage, pageSize);
if ((contentList!=null)&&(contentList.getRows().getCount()!=0)){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -