Package cn.edu.pku.dr.requirement.elicitation.data

Examples of cn.edu.pku.dr.requirement.elicitation.data.ScenarioVersion


                observers += role.getRoleId() + ",";
            if ("communicator".equals(role.getRoleType()))
                communicators += role.getRoleId() + ",";
        }

        ScenarioVersion version = new ScenarioVersion();
        version.setScenarioId(description.getScenarioId());
        version.setCommunicators(communicators);
        version.setParticipants(participants);
        version.setObservers(observers);
        version.setDatas(datas);
        version.setCreatorId(userId);
        version.setDescriptions(descriptions);
        version.setBuildTime(new java.sql.Date(System.currentTimeMillis()));
        version.setUpdateTime(new java.sql.Date(System.currentTimeMillis()));
        version.setModifyMark("description");

        dp.create(version);

        String changeContent = description.getDescriptionContent();
        String oriDescriptionContent = request.getParameter("cleanContent");

        description.setDescriptionContent(oriDescriptionContent);
        if (description.getDescriptionId() == null) {
            dp.create(description);
            returnMessage = "descriptionId=" + description.getDescriptionId()
                    + "<message>保存成功";
        } else {
            dp.update(description);
            returnMessage = "保存成功";
        }
        DescriptionVersion descriptionVersion = new DescriptionVersion();
        descriptionVersion.setBuildTime(new java.sql.Date(System
                .currentTimeMillis()));
        descriptionVersion.setUpdateTime(new java.sql.Date(System
                .currentTimeMillis()));
        descriptionVersion.setCreatorId(userId);
        descriptionVersion.setScenarioVersionId(version.getScenarioVersionId());
        descriptionVersion.setDescriptionId(description.getDescriptionId());
        descriptionVersion.setDescriptionVersionContent(changeContent);
        dp.create(descriptionVersion);
    }
View Full Code Here


        Long ScenarioVersionId = new Long(request
                .getParameter("ScenarioVersionId"));
        int tempId = ScenarioVersionId.intValue();
        tempId = tempId - 1;
        Long oldScenarioVersionId = new Long(tempId);
        ScenarioVersion scenarioversion = new ScenarioVersion();
        ScenarioVersion oldscenarioversion = new ScenarioVersion();
        Data data = new Data();
        Role communicator = new Role();
        Role participant = new Role();
        Role observer = new Role();
        DescriptionVersion description = new DescriptionVersion();
        DescriptionVersion oldescription = new DescriptionVersion();
        // 查询当前版本的scenarioversion
        Object object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.ScenarioVersion");
        Class clazz = object.getClass();
        SelectCommand scmdScenarioVersion = DAOFactory.getSelectCommand(clazz);
        Filter filter = DAOFactory.getFilter("scenarioVersionId",
                SQLOperator.EQUAL, ScenarioVersionId.toString());
        scmdScenarioVersion.setFilter(filter);
        Session session = SessionFactory.openSession();
        ArrayList scenarioVersions = session.query(scmdScenarioVersion);
        if (scenarioVersions.size() == 1) {
            scenarioversion = (ScenarioVersion) scenarioVersions.get(0);
        }
        // 查询上一版本的scenarioversion
        if (oldScenarioVersionId.intValue() > -1) {
            SelectCommand scmdOldScenarioVersion = DAOFactory
                    .getSelectCommand(clazz);
            Filter oldfilter = DAOFactory.getFilter("scenarioVersionId",
                    SQLOperator.EQUAL, oldScenarioVersionId.toString());
            scmdOldScenarioVersion.setFilter(oldfilter);
            ArrayList oldscenarioVersions = session
                    .query(scmdOldScenarioVersion);
            if (oldscenarioVersions.size() == 1) {
                oldscenarioversion = (ScenarioVersion) oldscenarioVersions
                        .get(0);
            }
        }
        // 提取当前版本的变化的内容
        String modifyMark = scenarioversion.getModifyMark();
        String[] modifyDomain = modifyMark.split("\\,");
        Object o;
        for (int k = 0; k < modifyDomain.length; k++) {
            String content = " ";
            // 得到datas最新和上一版本的内容
            if ("datas".equals(modifyDomain[k])) {
                String newDatas = "";
                String oldDatas = "无";
                // 取最新的datas
                o = BeanUtil
                        .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Data");
                clazz = o.getClass();
                SelectCommand scmd = DAOFactory.getSelectCommand(clazz);
                String[] datas = new String[10];
                datas = (String[]) scenarioversion.getDatas().split("\\,");
                Filter filternew = DAOFactory.getFilter("dataId",
                        SQLOperator.IN, datas);
                scmd.setFilter(filternew);
                ArrayList dataList = session.query(scmd);
                for (int j = 0; j < dataList.size(); j++) {
                    data = (Data) dataList.get(j);
                    newDatas = newDatas + data.getDataName();
                }
                // 取以前的datas
                if (oldscenarioversion != null) {
                    datas = (String[]) oldscenarioversion.getDatas().split(
                            "\\,");
                    Filter filterold = DAOFactory.getFilter("dataId",
                            SQLOperator.IN, datas);
                    scmd.setFilter(filterold);
                    dataList = session.query(scmd);
                    for (int j = 0; j < dataList.size(); j++) {
                        data = (Data) dataList.get(j);
                        oldDatas = oldDatas + data.getDataName();
                    }
                }
                // 得到content
                /*
                 * content = content + "<table class=\"changeborder\">" + "<tr class=\"change\" ><td>observers</td></tr>" + "<tr class=\"version\"><td>上一版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * oldDatas + "</td></tr>" + "<tr class=\"version\"><td>目前版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * newDatas + "</td></tr></table>";
                 */
                content = content + "<table class=\"changeborder\">"
                        + "<tr class=\"change\" ><td>datas</td></tr>"
                        + "<tr class=\"version\"><td>目前版本:</td></tr>"
                        + "<tr class=\"content\"><td>" + newDatas
                        + "</td></tr></table>";

            }
            // 得到participants最新和上一版本的内容
            else if ("participants".equals(modifyDomain[k])) {
                String newParticipants = "";
                String oldParticipants = "无";
                // 取最新的participants
                o = BeanUtil
                        .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
                clazz = o.getClass();
                SelectCommand scmd = DAOFactory.getSelectCommand(clazz);
                String[] participants = new String[10];
                participants = (String[]) scenarioversion.getParticipants()
                        .split("\\,");
                Filter filternew = DAOFactory.getFilter("roleId",
                        SQLOperator.IN, participants);
                scmd.setFilter(filternew);
                ArrayList participantList = session.query(scmd);
                for (int j = 0; j < participantList.size(); j++) {
                    participant = (Role) participantList.get(j);
                    newParticipants = newParticipants
                            + participant.getRoleName();
                }
                // 取以前的participants
                if (oldscenarioversion != null) {
                    participants = (String[]) oldscenarioversion
                            .getParticipants().split("\\,");
                    Filter filterold = DAOFactory.getFilter("roleId",
                            SQLOperator.IN, participants);
                    scmd.setFilter(filterold);
                    participantList = session.query(scmd);
                    session.close();
                    for (int j = 0; j < participantList.size(); j++) {
                        participant = (Role) participantList.get(j);
                        oldParticipants = oldParticipants
                                + participant.getRoleName();
                    }
                }
                // 得到content
                /*
                 * content = content + "<table class=\"changeborder\">" + "<tr class=\"change\" ><td>observers</td></tr>" + "<tr class=\"version\"><td>上一版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * oldParticipants + "</td></tr>" + "<tr class=\"version\"><td>目前版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * newParticipants + "</td></tr></table>";
                 */
                content = content + "<table class=\"changeborder\">"
                        + "<tr class=\"change\" ><td>participants</td></tr>"
                        + "<tr class=\"version\"><td>目前版本:</td></tr>"
                        + "<tr class=\"content\"><td>" + newParticipants
                        + "</td></tr></table>";

            } else if ("communicators".equals(modifyDomain[k])) {
                String newCommunicators = "";
                String oldCommunicators = "无";
                // 取最新的communicators
                o = BeanUtil
                        .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
                clazz = o.getClass();
                SelectCommand scmd = DAOFactory.getSelectCommand(clazz);
                String[] communicators = new String[10];
                communicators = (String[]) scenarioversion.getParticipants()
                        .split("\\,");
                Filter filternew = DAOFactory.getFilter("roleId",
                        SQLOperator.IN, communicators);
                scmd.setFilter(filternew);
                ArrayList communicatorList = session.query(scmd);
                for (int j = 0; j < communicatorList.size(); j++) {
                    communicator = (Role) communicatorList.get(j);
                    newCommunicators = newCommunicators
                            + communicator.getRoleName();
                }
                // 取以前的communicators
                if (oldscenarioversion != null) {
                    communicators = (String[]) oldscenarioversion
                            .getParticipants().split("\\,");
                    Filter filterold = DAOFactory.getFilter("roleId",
                            SQLOperator.IN, communicators);
                    scmd.setFilter(filterold);
                    communicatorList = session.query(scmd);
                    session.close();
                    for (int j = 0; j < communicatorList.size(); j++) {
                        communicator = (Role) communicatorList.get(j);
                        oldCommunicators = oldCommunicators
                                + participant.getRoleName();
                    }
                }
                // 得到content
                /*
                 * content = content + "<table class=\"changeborder\">" + "<tr class=\"change\" ><td>observers</td></tr>" + "<tr class=\"version\"><td>上一版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * oldCommunicators + "</td></tr>" + "<tr class=\"version\"><td>目前版本:</td></tr>" + "<tr class=\"content\"><td>" +
                 * newCommunicators + "</td></tr></table>";
                 */
                content = content + "<table class=\"changeborder\">"
                        + "<tr class=\"change\" ><td>Communicators</td></tr>"
                        + "<tr class=\"version\"><td>目前版本:</td></tr>"
                        + "<tr class=\"content\"><td>" + newCommunicators
                        + "</td></tr></table>";

            } else if ("observers".equals(modifyDomain[k])) {
                String newObservers = "";
                String oldObservers = "";
                // 取最新的observers
                o = BeanUtil
                        .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
                clazz = o.getClass();
                SelectCommand scmd = DAOFactory.getSelectCommand(clazz);
                String[] observers = new String[10];
                observers = (String[]) scenarioversion.getParticipants().split(
                        "\\,");
                Filter filternew = DAOFactory.getFilter("roleId",
                        SQLOperator.IN, observers);
                scmd.setFilter(filternew);
                ArrayList communicatorList = session.query(scmd);
                for (int j = 0; j < communicatorList.size(); j++) {
                    observer = (Role) communicatorList.get(j);
                    newObservers = newObservers + observer.getRoleName();
                }
                // 取以前的observers
                if (oldscenarioversion != null) {
                    observers = (String[]) oldscenarioversion.getParticipants()
                            .split("\\,");
                    Filter filterold = DAOFactory.getFilter("roleId",
                            SQLOperator.IN, observers);
                    scmd.setFilter(filterold);
                    communicatorList = session.query(scmd);
View Full Code Here

        String descriptiontable = "暂无描述";
        String remarktable = "暂无评论";
        // Long scenarioversionId = new Long(88);
        Long scenarioversionId = new Long(request
                .getParameter("scenarioversionId"));
        ScenarioVersion scenarioversion = new ScenarioVersion();
        Role participant = new Role();
        Role communicator = new Role();
        Role observer = new Role();
        Data data = new Data();
        DescriptionVersion description = new DescriptionVersion();
        Remark remark = new Remark();
        Object object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.ScenarioVersion");
        Class clazz = object.getClass();
        SelectCommand scmd = DAOFactory.getSelectCommand(clazz);
        Filter filter = DAOFactory.getFilter("scenarioVersionId",
                SQLOperator.EQUAL, scenarioversionId);
       
        scmd.setFilter(filter);
        Session session = SessionFactory.openSession();
        ArrayList scenarioVersions = session.query(scmd);
        if (scenarioVersions.size() > 0) {
            scenarioversion = (ScenarioVersion) scenarioVersions.get(0);
        }
        // 将参与者取出
        object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
        clazz = object.getClass();
        scmd = DAOFactory.getSelectCommand(clazz);
        String[] participants = new String[10];
        participants = scenarioversion.getParticipants().split("\\,");
        Filter filter_participants = DAOFactory.getFilter("roleId",
                SQLOperator.IN, participants);
        scmd.setFilter(filter_participants);
        ArrayList participantList = session.query(scmd);
        String participantcontent = "";
        for (int j = 0; j < participantList.size(); j++) {
            participant = (Role) participantList.get(j);
            participantcontent = participantcontent + participant.getRoleName();
        }
        // scenarioversion.setParticipants(participantcontent);
        // 将外部交互者取出
        object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
        clazz = object.getClass();
        scmd = DAOFactory.getSelectCommand(clazz);
        String[] communicators = new String[10];
        communicators = scenarioversion.getCommunicators().split("\\,");
        Filter filter_communicators = DAOFactory.getFilter("roleId",
                SQLOperator.IN, communicators);
        scmd.setFilter(filter_communicators);
        ArrayList communicatorList = session.query(scmd);
        String communicatorcontent = "";
        for (int j = 0; j < communicatorList.size(); j++) {
            communicator = (Role) communicatorList.get(j);
            communicatorcontent = communicatorcontent
                    + communicator.getRoleName();
        }
        scenarioversion.setCommunicators(communicatorcontent);
        // 将观察者取出
        object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
        clazz = object.getClass();
        scmd = DAOFactory.getSelectCommand(clazz);
        String[] observers = new String[10];
        observers = scenarioversion.getObservers().split("\\,");
        Filter filter_observers = DAOFactory.getFilter("roleId",
                SQLOperator.IN, observers);
        scmd.setFilter(filter_observers);
        ArrayList observerList = session.query(scmd);
        String observercontent = "";
        for (int j = 0; j < observerList.size(); j++) {
            observer = (Role) observerList.get(j);
            observercontent = observercontent + observer.getRoleName();
        }
        scenarioversion.setObservers(observercontent);
        // 将数据取出
        object = BeanUtil
                .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Data");
        clazz = object.getClass();
        scmd = DAOFactory.getSelectCommand(clazz);
        String[] datas = new String[10];
        datas = scenarioversion.getDatas().split("\\,");
        Filter filter_datas = DAOFactory.getFilter("dataId", SQLOperator.IN,
                datas);
        scmd.setFilter(filter_datas);
        ArrayList dataList = session.query(scmd);
        String datacontent = "";
        for (int j = 0; j < dataList.size(); j++) {
            data = (Data) dataList.get(j);
            datacontent = datacontent + data.getDataName();
        }
        scenarioversion.setDatas(datacontent);
        // 将描述前面的部分放入content
        content = content
                + "<table><tbody id=\"reality\"><tr  align=\"center\">"
                + "场景名:&nbsp;" + scenarioversion.getScenarioName()
                + "&nbsp;&nbsp;&nbsp; &nbsp;版本号:"
                + scenarioversion.getScenarioVersionId() + "</tr>";
        // 加入场景名称
        content = content
                + "<tr class=\"trContent\" ><th class=\"trContent\">场景名称</th><td class=\"trContent\" id=\"sn\">"
                + scenarioversion.getScenarioName() + "</td>";
        // 加入参与者
        content = content
                + "<th class=\"trContent\" width=\"80px\">参与者</th><td  class=\"trContent\" id=\"participant\"><span id=\"participant_list\">"
                + participantcontent + "</span></td></tr>";
        // 加入外部交互者
        content = content
                + "<tr class=\"trContent\" ><th class=\"trContent\">外部交互者</th><td  class=\"trContent\" id=\"communicator\"><span id=\"communicator_list\">"
                + communicatorcontent + "</span></td>";
        // 加入观察者
        content = content
                + "<th class=\"trContent\" width=\"80px\">观察者</th><td  class=\"trContent\" id=\"observer\"><span id=\"observer_list\">"
                + observercontent + "</span></td></tr>";
        // 加入数据
        content = content
                + "<tr class=\"trContent\" width=\"80px\" ><th class=\"trContent\">数据</th><td  class=\"trContent\" id=\"data\" colspan=\"3\"><span id=\"data_list\">"
                + datacontent + "</span></td></tr>";
        // 添加描述以及remark
        int length = scenarioversion.getParticipants().split("\\,").length;
        String[] parti = new String[length];
        parti = scenarioversion.getParticipants().split("\\,");

        for (int i = 0; i < parti.length; i++) {
            object = BeanUtil
                    .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.Role");
            clazz = object.getClass();
            scmd = DAOFactory.getSelectCommand(clazz);
            Filter filter_participant = DAOFactory.getFilter("roleId",
                    SQLOperator.EQUAL, parti[i]);
            scmd.setFilter(filter_participant);
            ArrayList participantsList = session.query(scmd);
            if (participantsList.size() > 0) {
                participant = (Role) participantsList.get(0);
            }
            content = content
                    + "<tr  class=\"trContent\" ><th class=\"trContent\" width=\"80px\">"
                    + participant.getRoleName() + "</th>";
            // 取描述
            object = BeanUtil
                    .getEmptyObject("cn.edu.pku.dr.requirement.elicitation.data.DescriptionVersion");
            clazz = object.getClass();
            scmd = DAOFactory.getSelectCommand(clazz);
            Filter filterdescription2 = DAOFactory.getFilter(
                    "scenarioVersionId", SQLOperator.EQUAL, scenarioversion
                            .getScenarioVersionId());
            Filter filterdescription3 = DAOFactory.getFilter("creatorId",
                    SQLOperator.EQUAL, parti[i]);
            Filter filterdescription1 = DAOFactory.getFilter();
            filterdescription1.addFilter(filterdescription3);
View Full Code Here

TOP

Related Classes of cn.edu.pku.dr.requirement.elicitation.data.ScenarioVersion

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.