Package com.exedosoft.plat

Examples of com.exedosoft.plat.Transaction


//    dao.setAutoClose(false);
//    dao.setIsTransaction(true);
   
    DODataSource dds = DODataSource.parseGlobals();
   
    Transaction t = dds.getTransaction();
   
    t.begin();
   
    try {

      StringBuffer aServiceSql = new StringBuffer("select * from ");
      aServiceSql.append(bo.getCorrInstance().getValue("sqlStr")).append(
          " where ").append(prop.getColName()).append(" = ?");
      log.info(" The Service Sql is ::" + aServiceSql);
      DOService aService = new DOService();
      aService.setBo(curBO);
      aService.setMainSql(aServiceSql.toString());
      aService.setName(parentBO.getName() + "have" + curBO.getName());
      aService.setL10n(parentBO.getL10n() + "拥有的" + curBO.getL10n());
      DAOUtil.INSTANCE().store(aService);

      DOParameterService dps = new DOParameterService();
      dps.setDop(keyPara);
      dps.setDos(aService);
      dps.setOrderNum(new Integer(5));
      DAOUtil.INSTANCE().store(dps);

      DOService sInsert = DOService.getService(curBO.getName()
          + ".insert");
      log.info("Find the insert Service::" + sInsert.getName());
      DOParameterService paraInsert = DOParameterService
          .getDOParaService(propPara.getObjUid(), sInsert.getObjUid());
      if (paraInsert != null) {
        paraInsert.setDop(keyPara);
        DAOUtil.INSTANCE().store(paraInsert);
      }

      DOService sUpdate = DOService.getService(curBO.getName()
          + ".update");
      log.info("Find the update Service::" + sUpdate.getName());
      DOParameterService paraUpdate = DOParameterService
          .getDOParaService(propPara.getObjUid(), sUpdate.getObjUid());
      if (paraUpdate != null) {
        paraUpdate.setDop(keyPara);
        DAOUtil.INSTANCE().store(paraUpdate);
      }
     
   
      //////////////////////////////////////////end Business
     
     
     
     
      DOPaneModel pmParentInsert = DOPaneModel.getPaneModelByName("pane_"+ parentBO.getName()+".list.insert");
      DOPaneModel pmChildList = DOPaneModel.getPaneModelByName("pane_"+ curBO.getName()+".list");
     
      pmChildList.setTargetPane(pmChildList);
      DAOUtil.INSTANCE().store(pmChildList);
     
      DOController ccSplitePane = DOController.getControllerByName(LayOutSplitPane.class.getName());
      DOPaneModel pm = new DOPaneModel();
      pm.setName(curBO.getName()+"And"+parentBO.getName()+"LinkPane");
      pm.setL10n(curBO.getName()+"And"+parentBO.getName()+"LinkPane");
      pm.setController(ccSplitePane);
      pm.setLinkType(Integer.valueOf(DOPaneModel.LAYOUT_VERTICAL));
      pm.setCategory(pmParentInsert.getCategory());
     
      DAOUtil.INSTANCE().store(pm);
      //pane_test.dept.list.insert
      DOGridModel childListGrid  = DOGridModel.getGridModelByName("grid_" + curBO.getName()+".list");
      log.info("get the chidlListGrid" + childListGrid.getName());
      childListGrid.setService(aService);
      childListGrid.setIsCheckBox(Integer.valueOf(1));
      DAOUtil.INSTANCE().store(childListGrid);
     
      //pane_test.dept.list.insert

      DOServiceRedirect sr = DOServiceRedirect.getServiceRedirect(sInsert.getObjUid());
      sr.setPaneModel(pmChildList);
      DAOUtil.INSTANCE().store(sr);

     
      DOPaneLinks dpl1 = new DOPaneLinks();
      dpl1.setParentPane(pm);
      dpl1.setChildPane(pmParentInsert);
      dpl1.setOrderNum(Integer.valueOf(5));
      DAOUtil.INSTANCE().store(dpl1);
     
      DOPaneLinks dpl2 = new DOPaneLinks();
      dpl2.setParentPane(pm);
      dpl2.setChildPane(pmChildList);
      dpl2.setOrderNum(Integer.valueOf(10));
      DAOUtil.INSTANCE().store(dpl2);
     
     
      DOService parentInsert =  DOService.getService(parentBO.getName()
          + ".insert");
     
      DOService parentUpdate =  DOService.getService(parentBO.getName()
          + ".update");

      DOPaneModel pmParentUpdate = DOPaneModel.getPaneModelByName("pane_"+ parentBO.getName()+".browse.update");
     
      pmParentUpdate.setTargetPane(pmParentInsert);
      DAOUtil.INSTANCE().store(pmParentUpdate);
     
      DOServiceRedirect srParent = DOServiceRedirect.getServiceRedirect(parentInsert.getObjUid());
      srParent.setPaneModel(pmParentUpdate);
      DAOUtil.INSTANCE().store(srParent);
     
     
      DOServiceRedirect srParentU = DOServiceRedirect.getServiceRedirect(parentUpdate.getObjUid());
      srParentU.setPaneModel(pmParentUpdate);
      DAOUtil.INSTANCE().store(srParentU);
     
     
      DOGridModel parentUpdateGrid  = DOGridModel.getGridModelByName("grid_" + parentBO.getName()+".browse.update");
     
     
      DOController formSaveButton = DOController.getControllerByName(TService.class.getName());
      DOPaneModel pmChildInsert = DOPaneModel.getPaneModelByName("pane_"+ curBO.getName()+".list.insert");

      DOFormModel fm = new DOFormModel();
      fm.setController(formSaveButton);
      fm.setL10n("Insert Child");
      fm.setLinkPaneModel(pmChildInsert);
      fm.setIsOutGridAction(Integer.valueOf(DOFormModel.OUTGRID_BOTTOM));
     
      fm.setController(formSaveButton);
      fm.setGridModel(parentUpdateGrid);
      fm.setOrderNum(new Integer(2000));
      DAOUtil.INSTANCE().store(fm);
     
     
     
      DOActionConfig ac = DOActionConfig.getActionConfig("deleteallaction");
      DOService sDelete = DOService.getService(curBO.getName()
          + ".delete");
      sDelete.setActionConfig(ac);
      DAOUtil.INSTANCE().store(sDelete);
     
      DOServiceRedirect srChildDelete = DOServiceRedirect.getServiceRedirect(sDelete.getObjUid());
      srChildDelete.setPaneModel(pmChildList);
      DAOUtil.INSTANCE().store(srChildDelete);
       
      DOController deletecontroller = DOController.getControllerByName("deletecontroller");

      DOFormModel deleteAll = new DOFormModel();
      deleteAll.setL10n("删除选中");
      deleteAll.setLinkService(sDelete);
      deleteAll.setIsOutGridAction(Integer.valueOf(DOFormModel.OUTGRID_BOTTOM));
      deleteAll.setController(deletecontroller);
      deleteAll.setGridModel(childListGrid);
      deleteAll.setOrderNum(new Integer(2000));
      DAOUtil.INSTANCE().store(deleteAll);
     

    } catch (Exception ex1) {
      ex1.printStackTrace();
      this.setEchoValue(ex1.getMessage());
      t.rollback();
      return NO_FORWARD;
    } finally {

      t.end();
    }
    return DEFAULT_FORWARD;
  }
View Full Code Here


    DOBO boGrid = DOBO.getDOBOByName("DO_UI_GridModel");
    BOInstance selectBI = bo.getCorrInstance();

    sb.append("<bo>").append(selectBI.toJSONString()).append("</bo>\n");

    Transaction t = this.service.currentTransaction();
    List<String> allIDs = new ArrayList<String>();
    try {
      t.begin();

      // /属性
      DOService servProperties = DOService
          .getService("DO_BO_Property_findbybouid");
      appendJSONS(sb, "property", servProperties);
      // /参数
      DOService servParameters = DOService
          .getService("DO_Parameter_findbybouid");
      appendJSONS(sb, "parameter", servParameters);
      // 规则
      DOService servRules = DOService.getService("DO_Rule_findbybouid");
      appendJSONS(sb, "rule", servRules);

      // 业务对象下面的服务
      DOService servServices = DOService
          .getService("DO_Service_Browse_findbybouid");
      List services = appendJSONS(sb, "service", servServices);

      // 服务下面的参数
      DOService servParaService = DOService
          .getService("DO_Parameter_Service_findbyserviceUid");
      sb.append("\n<parameter_service>");
      for (Iterator it = services.iterator(); it.hasNext();) {
        BOInstance bi = (BOInstance) it.next();
        List paraServices = servParaService.invokeSelect(bi.getUid());
        appendLi(sb, paraServices);
      }
      sb.append("</parameter_service>");

      // 服务下面的规则
      DOService servRuleService = DOService
          .getService("DO_Service_Rule_findbyserviceuid");
      sb.append("\n<rule_service>");
      for (Iterator it = services.iterator(); it.hasNext();) {
        BOInstance bi = (BOInstance) it.next();
        List ruleServices = servRuleService.invokeSelect(bi.getUid());
        appendLi(sb, ruleServices);
      }
      sb.append("</rule_service>");

      // 业务对象下面的面板
      DOService servPanes = DOService
          .getService("DO_UI_PaneModel_selectbyboduid");
      List panes = appendJSONS(sb, "pane", servPanes);

      DOService servPaneLinks = DOService
          .getService("DO_UI_PaneLinks_findbyparentPaneUid");
      sb.append("\n<pane_links>");
      List<BOInstance> listGridOfPane = new ArrayList();
      for (Iterator it = panes.iterator(); it.hasNext();) {
        BOInstance aPane = (BOInstance) it.next();
        if (aPane!=null && aPane.getValue("linkType")!=null && aPane.getValue("linkType").equals(
            DOPaneModel.LINKTYPE_GRIDMODEL)) {
          BOInstance aGrid = boGrid.getInstance(aPane
              .getValue("linkUID"));
          if (aGrid != null) {
            listGridOfPane.add(aGrid);
          }
        }
        List list = servPaneLinks.invokeSelect(aPane.getUid());
        appendLi(sb, list);
      }
      sb.append("</pane_links>");

      // /业务对象下面的表格 应该用面板下面表格比较好
      DOService servGrids = DOService
          .getService("DO_UI_GridModel_findbycategoryUid");

      List<BOInstance> grids = servGrids.invokeSelect();
      listGridOfPane.removeAll(grids);
      grids.addAll(listGridOfPane);

      sb.append("\n<grid>");
      appendLi(sb, grids);
      sb.append("</grid>");

      // /表格下面的表格元素
      DOService servForms = DOService
          .getService("DO_UI_FormModel_findbyGridModelUid");
      // /表格元素连接的表格元素
      DOService servFormRelations = DOService
          .getService("DO_UI_FormLinks_findbyformuid");

      DOService servFormTargets = DOService
          .getService("DO_UI_FormTargets_findbyformUid");

      sb.append("\n<form>");
      StringBuilder sbRelations = new StringBuilder("\n<form_relation>");
      StringBuilder sbTargets = new StringBuilder("\n<form_target>");

      for (Iterator it = grids.iterator(); it.hasNext();) {
        BOInstance bi = (BOInstance) it.next();
        List forms = servForms.invokeSelect(bi.getUid());
        appendLi(sb, forms);
        for (Iterator itForm = forms.iterator(); itForm.hasNext();) {
          BOInstance biForm = (BOInstance) itForm.next();
          List formRelations = servFormRelations.invokeSelect(biForm
              .getUid());
          appendLi(sbRelations, formRelations);
          List formTargets = servFormTargets.invokeSelect(biForm
              .getUid());
          appendLi(sbTargets, formTargets);
        }
      }
      sbRelations.append("</form_relation>");
      sbTargets.append("</form_target>");
      sb.append("</form>");
      sb.append(sbRelations);
      sb.append(sbTargets);

      // 菜单
      sb.append("\n<menu>");
      DOService servMenus = DOService
          .getService("DO_UI_MenuModel_findbycategoryUid_top");
      DOService servChildMenu = DOService
          .getService("DO_UI_MenuModel_selflink");

      List allMenus = new ArrayList();
      List topMenus = servMenus.invokeSelect();
      allMenus.addAll(topMenus);
      for (Iterator it = topMenus.iterator(); it.hasNext();) {
        BOInstance itMenu = (BOInstance) it.next();
        getChildBIs(allMenus, itMenu, servChildMenu);
      }
      appendLi(sb, allMenus);
      sb.append("</menu>");

      // 树
      sb.append("\n<tree>");
      DOService servTrees = DOService
          .getService("DO_UI_TreeModel_findbycategoryUid");
      DOService servChildTree = DOService
          .getService("DO_UI_TreeModel_findbyparentuid");

      List allTrees = new ArrayList();
      List topTrees = servTrees.invokeSelect();
      allTrees.addAll(topTrees);

      for (Iterator it = topTrees.iterator(); it.hasNext();) {
        BOInstance itTree = (BOInstance) it.next();
        getChildBIs(allTrees, itTree, servChildTree);
      }
      appendLi(sb, allTrees);
      sb.append("</tree>");

      t.end();
    } catch (Exception e) {
      t.rollback();
      e.printStackTrace();
    }

    sb.append("</export>");
    this.setEchoValue(sb.toString());
View Full Code Here

   
    DOService deleteApp = DOService.getService("DO_Application_Delete");
    DOService deletePackages = DOService.getService("DO_BusiPackage_deletebyapplicationuid");
    DOService findBOByPackage = DOService.getService("DO_BO_FindByBPUid");
   
    Transaction t = deleteApp.currentTransaction();
    t.begin();
    try {
      DOService service = DOService.getService("DO_BusiPackage_ofapplicationuid");
      List<BOInstance<?>> listP = service.invokeSelect(biApp.getUid());
      for(BOInstance<?> biPackage : listP){
        List<BOInstance<?>> listBO = findBOByPackage.invokeSelect(biPackage.getUid());
        for(BOInstance<?>  biBO : listBO){
          DORemoveConfigDOBO.removeBO(biBO);
        }
      }

      ///delete packages
      deletePackages.invokeUpdate(biApp.getUid());
      ///delete App
      deleteApp.invokeUpdate(biApp.getUid());
     
    }catch (ExedoException e) {
      t.rollback();
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    t.end();
   
    //DO_BusiPackage_deletebyapplicationuid
   
    //DO_BusiPackage_ofapplicationuid
   
View Full Code Here

    StringBuilder sb = new StringBuilder("<export>");
    DOBO bo = DOBO.getDOBOByName("do_bo");

    BOInstance selectBI = bo.getCorrInstance();
    Transaction t = this.service.currentTransaction();
    List<String> allIDs = new ArrayList<String>();
    try {
      t.begin();

      exportBO(sb, selectBI);

      t.end();
    } catch (Exception e) {
      t.rollback();
      e.printStackTrace();
    }
    sb.append("</export>");
    this.setEchoValue(sb.toString());
    return DEFAULT_FORWARD;
View Full Code Here

    aBO.setName(project.getName() + "_global_bo");
    aBO.setL10n(project.getL10n() + "_global");

    DODataSource dds = DODataSource.parseGlobals();

    Transaction t = dds.getTransaction();

    t.begin();

    DOService aService = DOService.getService("DO_UI_PaneLinks_copy");
    try {
      // //////////保存业务包
      DAOUtil.INSTANCE().currentDataSource(dds);

      DAOUtil.INSTANCE().store(bp);

      // //保存业务对象
      aBO.setPakage(bp);

      DAOUtil.INSTANCE().store(aBO);
     
      ///////关联组织权限相关的业务包到初始化的工程下面
//
//      DOService updateBPService = DOService.getService("DO_BusiPackage_Update_copy");
//      BusiPackage bporg = BusiPackage.getPackageByName("dorgauth");
//      bporg.setApplication(project);
//      DAOUtil.INSTANCE().store(bporg,updateBPService);
//     
//
//      BusiPackage bpAuthSys = BusiPackage.getPackageByName("auth_system_imp");
//      bpAuthSys.setApplication(project);
//      DAOUtil.INSTANCE().store(bpAuthSys,updateBPService);
//
//     
//      BusiPackage bpLog = BusiPackage.getPackageByName("log_default_imp");
//      bpLog.setApplication(project);
//      DAOUtil.INSTANCE().store(bpLog,updateBPService);
//     
//
//      BusiPackage liuchengceshi = BusiPackage.getPackageByName("liuchengceshi");
//      liuchengceshi.setApplication(project);
//      DAOUtil.INSTANCE().store(liuchengceshi,updateBPService);
//     
//      BusiPackage gongzuoliu = BusiPackage.getPackageByName("gongzuoliu");
//      gongzuoliu.setApplication(project);
//      DAOUtil.INSTANCE().store(gongzuoliu,updateBPService);
//     
//      BusiPackage wf_history = BusiPackage.getPackageByName("wf_history");
//      wf_history.setApplication(project);
//      DAOUtil.INSTANCE().store(wf_history,updateBPService);

      /**
       * 存储应用的根面板
       */
      DOPaneModel pmRoot = new DOPaneModel();
      pmRoot.setCategory(aBO);
      pmRoot.setName("pane_" + project.getName());
      pmRoot.setL10n("pane_" + project.getName());
      pmRoot.setTitle(project.getDescription());

      // //////////////ccLayOutPane
      pmRoot.setController(contentPane);

      DAOUtil.INSTANCE().store(pmRoot);
     
      ////根面板
      aBO.setMainPaneModel(pmRoot);
      DAOUtil.INSTANCE().store(aBO);

      // ///////业务对象发布为一个应用
      project.setDobo(aBO);
      DAOUtil.INSTANCE().store(project);
     
      ////头部jsp
//      DOResource rs = new DOResource();
//      rs.setResourceName("jspheader_" + project.getName());
//      rs.setResourcePath(project.getName() + "/FormHeader.jsp");
//      rs.setResourceType(1);
//      DAOUtil.INSTANCE().store(rs);
                                 
      /**
       * 建立新的头面板
       */
      DOPaneModel pmTop = new DOPaneModel();

      pmTop.setController(layOutHeader);
      pmTop.setLinkType(DOPaneModel.LINKTYPE_RESOURCE);
      DOResource   drs = DAOUtil.INSTANCE().getBySql(DOResource.class,"select * from do_resource where resourceName like 'jspheader_%'");
      pmTop.setLinkUID(drs.getObjUid());                   
      pmTop.setLayoutAlign("top");
      pmTop.setCategory(aBO);
      pmTop.setL10n(project.getName() + "_headerPane");
      pmTop.setName(project.getName() + "_headerPane");
      DAOUtil.INSTANCE().store(pmTop);

      /**
       * 建立根面板和头面板的关联关系
       */
      DOPaneLinks pmTopLink = new DOPaneLinks();
      pmTopLink.setParentPane(pmRoot);
      pmTopLink.setChildPane(pmTop);
      pmTopLink.setOrderNum(new Integer(5));
      DAOUtil.INSTANCE().store(pmTopLink, aService);

      /**
       * 创建下方的面板
       */
      DOPaneModel pmBottom = new DOPaneModel();
      pmBottom.setCategory(aBO);
      pmBottom.setL10n(project.getName() + "_mainpane");
      pmBottom.setName(project.getName() + "_mainpane");

      pmBottom.setController(ccSplitePane);
      DAOUtil.INSTANCE().store(pmBottom);
      /**
       * 建立根面板和工作区域面板的关联
       */

      DOPaneLinks pmBottomLink = new DOPaneLinks();
      pmBottomLink.setParentPane(pmRoot);
      pmBottomLink.setChildPane(pmBottom);
      pmBottomLink.setOrderNum(new Integer(10));
      DAOUtil.INSTANCE().store(pmBottomLink, aService);

      // /左边面板

      DOMenuModel dmRoot = new DOMenuModel();
      dmRoot.setCategory(aBO);
      dmRoot.setController(menuController);
      dmRoot.setParentMenu(null);
      // ////////同名DOMenuModel
      dmRoot.setName(project.getName() + "_root");
      dmRoot.setL10n("Welcome " + project.getL10n());
      DOService storeRootMenu = DOService.getService("DO_UI_MenuModel_Insert_firstlevel");
      DAOUtil.INSTANCE().store(dmRoot,storeRootMenu);
     
     
//      ////更新菜单获取的sql语句
//       DOService menuService = DOService.getService("s_menumodel_byName");
//       menuService.setMainSql("select * from do_ui_menumodel where name = '" + dmRoot.getName() + "'");
//       DAOUtil.INSTANCE().store(menuService);
       

      DOMenuModel dmBP = new DOMenuModel();
      dmBP.setCategory(aBO);
      dmBP.setParentMenu(dmRoot);
      dmBP.setController(menuController);
      // ////////同名DOMenuModel
      dmBP.setName(project.getName());
      dmBP.setL10n(project.getL10n() );
      DAOUtil.INSTANCE().store(dmBP);
     
     
//      ///////组织权限相关的菜单 初始化到工程根菜单下面
//      DOMenuModel dmmAuth = DOMenuModel.getMenuModelByName("dorgauth_bp");
//      dmmAuth.setParentMenu(dmRoot);
//      DAOUtil.INSTANCE().store(dmmAuth);
//           
//      ///把工作流相关的菜单初始化到工程根菜单下面
//      DOMenuModel dorgauth_flow_test  = DOMenuModel.getMenuModelByName("dorgauth_flow_test");
//      dorgauth_flow_test .setParentMenu(dmRoot);
//      DAOUtil.INSTANCE().store(dorgauth_flow_test );
           
     
     
      ////工作台jsp
//      rs = new DOResource();
//      rs.setResourceName("workbenchjsp_" + project.getName());
//      rs.setResourcePath(project.getName() + "/workbench.jsp");
//      rs.setResourceType(1);
//      DAOUtil.INSTANCE().store(rs);
//     
      DOPaneModel pmContent = new DOPaneModel();// ///主内容显示区。
      pmContent.setCategory(aBO);
      pmContent.setName(project.getName() + "_MainContent");
      pmContent.setL10n(project.getName() + "_MainContent");
      pmContent.setController(mainPage);
      pmContent.setLinkType(DOPaneModel.LINKTYPE_RESOURCE);
     
      drs = DAOUtil.INSTANCE().getBySql(DOResource.class,"select * from do_resource where resourceName like 'workbenchjsp_%'");
      pmTop.setLinkUID(drs.getObjUid());                   

      pmContent.setLinkUID("4028803b34664771013466590987000c")/// workbench UId  
      DAOUtil.INSTANCE().store(pmContent);

      DOPaneLinks pmContentLink = new DOPaneLinks();
      pmContentLink.setParentPane(pmBottom);// //bottomPane为父亲
      pmContentLink.setChildPane(pmContent);
      pmContentLink.setOrderNum(new Integer(17));
      DAOUtil.INSTANCE().store(pmContentLink, aService);

      DOPaneModel pmLeft = new DOPaneModel();
      pmLeft.setController(layOutLeft);
      pmLeft.setLinkType(DOPaneModel.LINKTYPE_MENU);
      pmLeft.setLinkUID(dmRoot.getObjUid());
      pmLeft.setCategory(aBO);
      pmLeft.setL10n(project.getName() + "_leftindex_pane");
      pmLeft.setName(project.getName() + "_leftindex_pane");

      /**
       * 保存左边的左边的索引菜单
       */
      pmLeft.setTargetPane(pmContent);
      DAOUtil.INSTANCE().store(pmLeft);
     
      /**
       * 存储Mobile索引菜单的面包
       */
      DOPaneModel pmMobile = new DOPaneModel();
      pmMobile.setCategory(aBO);
      pmMobile.setName( project.getName() + "_mobile_pane");
      pmMobile.setL10n(project.getL10n() + "_mobile");
      pmMobile.setTitle(project.getDescription());
     
      pmMobile.setLinkType(DOPaneModel.LINKTYPE_MENU);
      pmMobile.setLinkUID(dmRoot.getObjUid());
      // //////////////ccLayOutPane
      pmMobile.setController(contentPane);

      DAOUtil.INSTANCE().store(pmMobile);
     
     
     

      DOPaneLinks pmLeftLink = new DOPaneLinks();
      pmLeftLink.setParentPane(pmBottom);// //bottomPane为父亲
      pmLeftLink.setChildPane(pmLeft);
      pmLeftLink.setOrderNum(new Integer(15));
      DAOUtil.INSTANCE().store(pmLeftLink, aService);
     
////最后copy
//      this.copyDir(project);

    } catch (Exception e) {

      t.rollback();
      e.printStackTrace();
    } finally {
      t.end();
    }
 
    // /执行目录copy工作
  }
View Full Code Here

TOP

Related Classes of com.exedosoft.plat.Transaction

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.