📄 mymanageaction.java
字号:
results = dataBaseService.executeQuery("SELECT COUNT(*) count FROM jrun_tradelog WHERE buyerid=" + uid + " AND status IN ( "+ Tenpayapi.trade_typestatus("eccredittrades")+ " ) AND (ratestatus=0 OR ratestatus=2)");
request.setAttribute("eccreditbuyer",results.get(0).get("count"));
results = dataBaseService.executeQuery("SELECT COUNT(*) count FROM jrun_tradelog WHERE sellerid=" + uid + " AND status IN ( "+ Tenpayapi.trade_typestatus("eccredittrades")+ " ) AND (ratestatus=0 OR ratestatus=1)");
request.setAttribute("eccreditseller",results.get(0).get("count"));
return mapping.findForward("toMy");
}
public ActionForward toMyTrades(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession();
int uid = (Integer) session.getAttribute("jsprun_uid");
this.setExtcredits(request);
int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
String threadadd = null;
String extrafid = null;
if (srchfid > 0) {
threadadd = "AND t.fid='" + srchfid + "'";
extrafid = "&srchfid=" + srchfid;
request.setAttribute("extrafid", extrafid);
}else{
threadadd = "";
extrafid = "";
}
String filter = request.getParameter("filter");
String myitem = request.getAttribute("myitem").toString();
String srchkey = request.getParameter("srchkey");
int tid =Common.toDigit(request.getParameter("tid"));
int pid =Common.toDigit(request.getParameter("pid"));
String sqlfield = "selltrades".equals(myitem) ? "sellerid" : "buyerid";
String sqlfilter = "";
String typestatus = "";
if ("attention".equals(filter)) {
typestatus = myitem;
} else if ("eccredit".equals(filter)) {
typestatus = "eccredittrades";
sqlfilter += myitem.equals("selltrades") ? " AND (tl.ratestatus=0 OR tl.ratestatus=1) ": " AND (tl.ratestatus=0 OR tl.ratestatus=2) ";
} else if ("all".equals(filter)) {
typestatus = "";
} else if ("success".equals(filter)) {
typestatus = "successtrades";
} else if ("closed".equals(filter)) {
typestatus = "closedtrades";
} else if ("refund".equals(filter)) {
typestatus = "refundtrades";
} else if ("unstart".equals(filter)) {
typestatus = "unstarttrades";
} else {
typestatus = "tradingtrades";
filter = "";
}
sqlfilter += typestatus.length()>0 ? " AND tl.status IN ( "+ Tenpayapi.trade_typestatus(typestatus) + " )" : "";
String sqlkey =null;
String extrasrchkey = null;
if (srchkey != null) {
sqlkey = " AND tl.subject like \'%" + Common.addslashes(srchkey).replace('*', '%')+ "%\'";
extrasrchkey = "&srchkey=" + Common.encode(srchkey);
} else {
sqlkey = "";
extrasrchkey = "";
}
String sqltid = tid>0 ? " AND tl.tid=" + tid+ (pid >0 ? " AND tl.pid=" + pid : "") : "";
String extratid = tid>0 ? "&tid=" + tid+ (pid >0 ? "&pid" + pid : "") : "";
Map<String, Integer> multi = this.multi(request, response, uid, "SELECT COUNT(*) count FROM jrun_tradelog tl, jrun_threads t WHERE tl.tid=t.tid AND tl." + sqlfield+ "=" + uid + threadadd + sqltid + sqlkey + sqlfilter,"my.jsp?item=" + myitem + extratid + extrafid+ (filter != null ? "&filter=" + filter : "")+ extrafid + extrasrchkey);
List<Map<String, String>> tradelists = dataBaseService.executeQuery("SELECT tl.*, tr.aid, t.subject AS threadsubject FROM jrun_tradelog tl, jrun_threads t, jrun_trades tr WHERE tl.tid=t.tid AND tr.pid=tl.pid AND tr.tid=tl.tid AND tl."+ sqlfield + "=" + uid + threadadd + sqltid + sqlkey+ sqlfilter + " ORDER BY tl.lastupdate DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
if (tradelists != null && tradelists.size() > 0) {
int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
String timeformat=(String)session.getAttribute("timeformat");
String dateformat=(String)session.getAttribute("dateformat");
SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
for (Map<String, String> tradelog : tradelists) {
int status=Integer.valueOf(tradelog.get("status"));
tradelog.put("lastupdate", Common.gmdate(sdf_all, Integer.valueOf(tradelog.get("lastupdate"))+timeoffset));
tradelog.put("attend", Tenpayapi.trade_typestatus(myitem, status)?"true":null);
tradelog.put("status", (String)Tenpayapi.trade_getstatus(status));
}
request.setAttribute("tradelists", tradelists);
}
request.setAttribute("extratid", extratid);
request.setAttribute("filter", filter);
request.setAttribute("tid", tid);
request.setAttribute("srchkey", srchkey);
request.setAttribute("extrasrchkey", extrasrchkey);
return mapping.findForward("toMy");
}
public ActionForward toMyTradethreads(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) {
HttpSession session = request.getSession();
int uid = (Integer) session.getAttribute("jsprun_uid");
this.setExtcredits(request);
int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
String extrafid = null;
if (srchfid > 0) {
extrafid = "&srchfid=" + srchfid;
request.setAttribute("extrafid", extrafid);
}else{
extrafid = "";
}
String srchkey = request.getParameter("srchkey");
int tid =Common.toDigit(request.getParameter("tid"));
String sqlkey = null;
String extrasrchkey = null;
if (srchkey != null&&srchkey.length()>0) {
sqlkey = "AND subject like \'%" + Common.addslashes(srchkey).replace('*', '%') + "%\'";
extrasrchkey = "&srchkey=" + Common.encode(srchkey);
srchkey=Common.dhtmlspecialchars(srchkey);
} else {
sqlkey = "";
extrasrchkey = "";
}
String sqltid = tid>0 ? "AND tid=" + tid : "";
String extratid = tid >0 ? "&tid=" + tid : "";
Map<String, Integer> multi = this.multi(request, response, uid, "SELECT COUNT(*) count FROM jrun_trades WHERE sellerid=" + uid + " " + sqltid + " " + sqlkey, "my.jsp?item=tradethreads"+ extratid + extrafid + extrasrchkey);
List<Map<String, String>> tradelists = dataBaseService.executeQuery("SELECT * FROM jrun_trades WHERE sellerid=" + uid+ " " + sqltid + " " + sqlkey+ " ORDER BY tradesum DESC, totalitems DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
int timestamp = (Integer)(request.getAttribute("timestamp"));
if (tradelists != null && tradelists.size() > 0) {
int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
String timeformat=(String)session.getAttribute("timeformat");
String dateformat=(String)session.getAttribute("dateformat");
SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
for (Map<String, String> tradethread : tradelists) {
tradethread.put("lastupdate", Common.gmdate(sdf_all, Integer.valueOf(tradethread.get("lastupdate"))+timeoffset));
tradethread.put("lastbuyererenc", Common.encode(tradethread.get("lastbuyer")));
double expiration=Integer.valueOf(tradethread.get("expiration"));
if (expiration>0) {
expiration = (expiration - timestamp) / 86400d;
if (expiration > 0) {
tradethread.put("expirationhour", String.valueOf((int) Math.floor((expiration - Math.floor(expiration)) * 24)));
tradethread.put("expiration", String.valueOf((int) Math.floor(expiration)));
} else {
tradethread.put("expiration", "-1");
}
}
}
request.setAttribute("tradelists", tradelists);
}
request.setAttribute("tid", tid);
request.setAttribute("srchkey", srchkey);
request.setAttribute("extrasrchkey", extrasrchkey);
request.setAttribute("extratid", extratid);
return mapping.findForward("toMy");
}
@SuppressWarnings("unchecked")
public ActionForward toMyReward(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession();
int uid = (Integer) session.getAttribute("jsprun_uid");
this.setExtcredits(request);
int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
String extrafid = null;
if (srchfid > 0) {
extrafid = "&srchfid=" + srchfid;
request.setAttribute("extrafid", extrafid);
}else{
extrafid = "";
}
Map<String, String> settings = (Map<String, String>) request.getAttribute("settings");
Map extcredits = dataParse.characterParse( settings.get("extcredits"),false);
String creditstrans = settings.get("creditstrans");
request.setAttribute("extcredits", extcredits);
request.setAttribute("creditstrans", creditstrans != null&& !creditstrans.equals("") ? Integer.valueOf(creditstrans) : 0);
String type = request.getParameter("type");
String filter = request.getParameter("filter");
List<Map<String, String>> rewardloglists = null;
if ("stats".equals(type)) {
Map<String, String> questions = new HashMap<String, String>();
Map<String, String> answers = new HashMap<String, String>();
List<Map<String, String>> results = null;
Map<String, String> map = null;
results = dataBaseService.executeQuery("SELECT COUNT(*) total, SUM(ABS(netamount)) totalprice FROM jrun_rewardlog WHERE authorid=" + uid);
map = results != null && results.size() > 0 ? results.get(0) : null;
questions.put("total", map != null ? map.get("total") : "0");
questions.put("totalprice", map != null&& map.get("totalprice") != null ? map.get("totalprice"): "0");
results = dataBaseService.executeQuery("SELECT COUNT(*) solved FROM jrun_rewardlog WHERE authorid=" + uid + " and answererid>0");
map = results != null && results.size() > 0 ? results.get(0) : null;
questions.put("solved", map != null ? map.get("solved") : "0");
questions.put("percent", number_format(questions.get("total"),questions.get("solved")));
request.setAttribute("questions", questions);
results = dataBaseService.executeQuery("SELECT COUNT(*) total FROM jrun_rewardlog WHERE answererid=" + uid);
map = results != null && results.size() > 0 ? results.get(0) : null;
answers.put("total", map != null ? map.get("total") : "0");
results = dataBaseService.executeQuery("SELECT COUNT(*) tids, SUM(ABS(t.price)) totalprice FROM jrun_rewardlog r LEFT JOIN jrun_threads t USING(tid) WHERE r.authorid>0 and r.answererid="+ uid);
map = results != null && results.size() > 0 ? results.get(0) : null;
answers.put("adopted", map != null && map.get("tids") != null ? map.get("tids") : "0");
answers.put("totalprice", map != null&& map.get("totalprice") != null ? map.get("totalprice"): "0");
answers.put("percent", number_format(answers.get("total"), answers.get("adopted")));
request.setAttribute("answers", answers);
} else if("question".equals(type)) {
filter = filter != null&& (filter.equals("solved") || filter.equals("unsolved")) ? filter: "";
String sqlfilter = filter.equals("") ? "" : (filter.equals("solved") ? " AND r.answererid>0": " AND r.answererid=0");
Map<String, Integer> multi = multi(request, response, uid, "SELECT COUNT(*) count FROM jrun_rewardlog r WHERE authorid=" + uid + sqlfilter,"my.jsp?item=reward&type=question&filter=" + filter);
rewardloglists = dataBaseService.executeQuery("SELECT r.tid, r.answererid, r.dateline,r.netamount, t.subject, t.price, m.uid, m.username, f.fid, f.name FROM jrun_rewardlog r LEFT JOIN jrun_threads t ON t.tid=r.tid LEFT JOIN jrun_forums f ON f.fid=t.fid LEFT JOIN jrun_members m ON m.uid=r.answererid WHERE r.authorid="+ uid+ sqlfilter+ " ORDER BY r.dateline DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
} else if ("answer".equals(type)) {
filter = filter != null&& (filter.equals("adopted") || filter.equals("unadopted")) ? filter: "";
String sqlfilter = filter.equals("") ? "" : (filter.equals("adopted") ? " AND r.authorid>0": " AND r.authorid=0");
Map<String, Integer> multi = multi(request, response, uid, "SELECT COUNT(*) count FROM jrun_rewardlog r WHERE answererid=" + uid + sqlfilter,"my.jsp?item=reward&type=answer&filter=" + filter);
rewardloglists = dataBaseService.executeQuery("SELECT r.tid, r.authorid, r.dateline, t.subject, t.price, m.uid, m.username, f.fid, f.name FROM jrun_rewardlog r LEFT JOIN jrun_threads t ON t.tid=r.tid LEFT JOIN jrun_forums f ON f.fid=t.fid LEFT JOIN jrun_members m ON m.uid=t.authorid WHERE r.answererid="+ uid+ sqlfilter+ " ORDER BY r.dateline DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
} else {
request.setAttribute("errorInfo", "未定义操作,请返回。");
return mapping.findForward("showMessage");
}
if (rewardloglists != null && rewardloglists.size() > 0) {
int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
String timeformat=(String)session.getAttribute("timeformat");
String dateformat=(String)session.getAttribute("dateformat");
SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
for (Map<String, String> rewardlog : rewardloglists) {
rewardlog.put("dateline", Common.gmdate(sdf_all, Integer.valueOf(rewardlog.get("dateline"))+timeoffset));
rewardlog.put("price", String.valueOf(Math.abs(Short.valueOf(rewardlog.get("price")))));
}
request.setAttribute("rewardloglists", rewardloglists);
}
request.setAttribute("filter", filter);
return mapping.findForward("toMy");
}
public ActionForward toMyDebate(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession();
int uid = (Integer) session.getAttribute("jsprun_uid");
this.setExtcredits(request);
String type = request.getParameter("type");
this.setExtcredits(request);
int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
String threadadd = null;
String extrafid = null;
if (srchfid > 0) {
threadadd = "AND t.fid='" + srchfid + "'";
extrafid = "&srchfid=" + srchfid;
request.setAttribute("extrafid", extrafid);
}else{
threadadd = "";
extrafid = "";
}
if ("orig".equals(type)) {
Map<String, Integer> multi = this.multi(request, response, uid,"SELECT COUNT(*) count FROM jrun_mythreads m, jrun_threads t WHERE m.uid="+ uid + " AND m.special='5' " + threadadd+ " AND m.tid=t.tid", "my.jsp?item=debate&type=orig" + extrafid);
List<Map<String, String>> debatelists = dataBaseService.executeQuery("SELECT t.tid, t.subject, t.fid, t.displayorder, t.closed, t.lastposter, t.lastpost, f.name FROM jrun_threads t, jrun_mythreads m ,jrun_forums f WHERE m.uid="+ uid+ " AND m.tid=t.tid AND t.fid=f.fid AND m.special='5' "+ threadadd+ " ORDER BY m.dateline DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
this.setAttribute(request, session, debatelists, "debatelists");
} else if ("apply".equals(type)) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -