⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 debatemsgaction.java

📁 cwbbs 云网论坛源码
💻 JAVA
字号:
package com.redmoon.forum.plugin.debate;import javax.servlet.http.HttpServletRequest;import cn.js.fan.util.ErrMsgException;import javax.servlet.ServletContext;import com.redmoon.forum.plugin.base.IPluginMsgAction;import org.apache.log4j.Logger;import com.redmoon.forum.MsgDb;import cn.js.fan.util.ParamUtil;import cn.js.fan.util.StrUtil;import cn.js.fan.util.ResKeyException;import com.redmoon.kit.util.FileUpload;import com.redmoon.forum.MsgMgr;import cn.js.fan.util.DateUtil;public class DebateMsgAction implements IPluginMsgAction {    Logger logger = Logger.getLogger(this.getClass().getName());    public DebateMsgAction() {    }        public synchronized boolean editTopic(ServletContext application,                                          HttpServletRequest request,                                          MsgDb md, FileUpload fu) throws            ErrMsgException {        if (md.isRootMsg()) {            String strBeginDate = fu.getFieldValue("debateBeginDate");            java.util.Date beginDate = DateUtil.parse(strBeginDate,                    "yyyy-MM-dd");            String strEndDate = fu.getFieldValue("debateEndDate");            java.util.Date endDate = DateUtil.parse(strEndDate, "yyyy-MM-dd");            String viewpoint1 = fu.getFieldValue("viewpoint1");            String viewpoint2 = fu.getFieldValue("viewpoint2");            DebateDb atd = new DebateDb();            atd = atd.getDebateDb(md.getId());            atd.setBeginDate(beginDate);            atd.setEndDate(endDate);            atd.setViewpoint1(viewpoint1);            atd.setViewpoint2(viewpoint2);            boolean re = false;            try {                re = atd.save();            } catch (ResKeyException e) {                throw new ErrMsgException(e.getMessage(request));            }            return re;        }        else {            String strType = StrUtil.getNullString(fu.getFieldValue(                    "viewpoint_type"));            int type = DebateViewpointDb.TYPE_SUPPORT;            if (StrUtil.isNumeric(strType)) {                type = Integer.parseInt(strType);            }            DebateViewpointDb dvd = new DebateViewpointDb();            dvd = dvd.getDebateViewpointDb(md.getId());            int oldType = dvd.getType();                        if (oldType!=type) {                dvd.setType(type);                boolean re = false;                try {                    re = dvd.save();                    if (re) {                        DebateDb dd = new DebateDb();                        dd = dd.getDebateDb(md.getRootid());                        if (type == DebateViewpointDb.TYPE_SUPPORT) {                            if (oldType==DebateViewpointDb.TYPE_OPPOSE) {                                dd.setUserCount2(dd.getUserCount2() - 1);                            }                            else                                dd.setUserCount3(dd.getUserCount3() - 1);                            dd.setUserCount1(dd.getUserCount1() + 1);                        } else if (type == DebateViewpointDb.TYPE_OPPOSE) {                            if (oldType==DebateViewpointDb.TYPE_SUPPORT) {                                dd.setUserCount1(dd.getUserCount1() - 1);                            }                            else                                dd.setUserCount3(dd.getUserCount3() - 1);                            dd.setUserCount2(dd.getUserCount2() + 1);                        } else {                            if (oldType==DebateViewpointDb.TYPE_SUPPORT) {                                dd.setUserCount1(dd.getUserCount1() - 1);                            }                            else                                dd.setUserCount2(dd.getUserCount2() + 1);                            dd.setUserCount3(dd.getUserCount3() + 1);                        }                        dd.save();                    }                } catch (ResKeyException e) {                    throw new ErrMsgException(e.getMessage(request));                }                return re;            }        }        return true;    }    public boolean AddNew(ServletContext application,                          HttpServletRequest request, MsgDb md, FileUpload fu) throws            ErrMsgException {        String strBeginDate = fu.getFieldValue("debateBeginDate");        java.util.Date beginDate = DateUtil.parse(strBeginDate, "yyyy-MM-dd");        String strEndDate = fu.getFieldValue("debateEndDate");        java.util.Date endDate = DateUtil.parse(strEndDate, "yyyy-MM-dd");        String viewpoint1 = fu.getFieldValue("viewpoint1");        String viewpoint2 = fu.getFieldValue("viewpoint2");        DebateDb atd = new DebateDb();        atd.setMsgId(md.getId());        atd.setBeginDate(beginDate);        atd.setEndDate(endDate);        atd.setViewpoint1(viewpoint1);        atd.setViewpoint2(viewpoint2);        boolean re = false;        try {            re = atd.create();        }        catch (ResKeyException e) {            throw new ErrMsgException(e.getMessage(request));        }        return re;    }    public boolean AddQuickReply(ServletContext application,                                 HttpServletRequest request, long replyMsgId) throws            ErrMsgException {        String strType = ParamUtil.get(request, "viewpoint_type");                int type = DebateViewpointDb.TYPE_SUPPORT;        if (StrUtil.isNumeric(strType)) {            type = Integer.parseInt(strType);        }        MsgDb md = new MsgDb();        md = md.getMsgDb(replyMsgId);                DebateViewpointDb dvd = new DebateViewpointDb();        dvd.setType(type);        dvd.setMsgId(md.getId());        boolean re = false;        try {            re = dvd.create();            if (re) {                DebateDb dd = new DebateDb();                dd = dd.getDebateDb(md.getRootid());                if (type==DebateViewpointDb.TYPE_SUPPORT) {                    dd.setUserCount1(dd.getUserCount1() + 1);                }                else if (type==DebateViewpointDb.TYPE_OPPOSE) {                    dd.setUserCount2(dd.getUserCount2() + 1);                }                else                    dd.setUserCount3(dd.getUserCount3() + 1);                dd.save();            }        }        catch (ResKeyException e) {            throw new ErrMsgException(e.getMessage(request));        }        return re;    }        public boolean delTopic(ServletContext application,                            HttpServletRequest request, MsgDb md) throws            ErrMsgException {        boolean re = false;        if (md.isRootMsg()) {            DebateDb rd = new DebateDb();            rd = rd.getDebateDb(md.getId());            re = rd.del();        }        else {            DebateViewpointDb dvd = new DebateViewpointDb();            dvd = dvd.getDebateViewpointDb(md.getId());            re = dvd.del();        }        return re;    }        public boolean delSingleMsg(long delId) throws            ResKeyException {        MsgDb md = new MsgDb();        md = md.getMsgDb(delId);        if (md.isRootMsg()) {            DebateDb rd = new DebateDb();            rd = rd.getDebateDb(delId);            if (rd.isLoaded())                return rd.del();            else                return false;        }        else {            DebateViewpointDb dvd = new DebateViewpointDb();            dvd = dvd.getDebateViewpointDb(delId);            return dvd.del();        }    }    public boolean AddReply(ServletContext application,                            HttpServletRequest request, MsgDb md, FileUpload fu) throws            ErrMsgException {        String strType = StrUtil.getNullString(fu.getFieldValue("viewpoint_type"));        int type = DebateViewpointDb.TYPE_SUPPORT;        if (StrUtil.isNumeric(strType)) {            type = Integer.parseInt(strType);        }        DebateViewpointDb dvd = new DebateViewpointDb();        dvd.setType(type);        dvd.setMsgId(md.getId());        boolean re = false;        try {            re = dvd.create();            if (re) {                DebateDb dd = new DebateDb();                dd = dd.getDebateDb(md.getRootid());                if (type==DebateViewpointDb.TYPE_SUPPORT) {                    dd.setUserCount1(dd.getUserCount1() + 1);                }                else if (type==DebateViewpointDb.TYPE_OPPOSE) {                    dd.setUserCount2(dd.getUserCount2() + 1);                }                else                    dd.setUserCount3(dd.getUserCount3() + 1);                dd.save();            }        }        catch (ResKeyException e) {            throw new ErrMsgException(e.getMessage(request));        }        return re;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -