示例#1
0
  /** составить словарь для комбо, с именем и фамилией, все пользователи */
  public void getAllWithCombo() {
    try {

      Table users = getTable(getModelName());
      Table userProfile = getTable("userProfile");
      Select select = getSelect();
      select.selectDistinct(users.getPrimary());
      select.select(users);
      select.select(userProfile.get("surname"), userProfile.get("name"));
      select.from(users);

      select.leftJoin(users.getPrimary(), userProfile.get("user_id"));
      // select.on(userProfile.get("delete_date").isNull());

      select.order(userProfile.get("surname"), OrdTypes.ASC);
      select.executeSelect(getConnection());

      select(select);
      setDictAliases("surname", "name");
      setDictionary();
    } catch (Exception ex) {
      addError(MyString.getStackExeption(ex));
      if (project.index.message != null) {
        project.index.message += MyString.getStackExeption(ex);
      }
      setStatus(false);
    }
  }
示例#2
0
  @Override
  public void renderAddEntityForm() {
    try {
      AbsEnt data = getFabric().get("div");
      LinkedHashMap<AbsEnt, String> hs = new LinkedHashMap<AbsEnt, String>();
      hs.put(
          textInput(fieldName, getReq(fieldName), "Сообщение*")
              .setAttribute(EnumAttrType.size, "80"),
          "");
      hs.put(hiddenInput("client_id", getReq("client_id")), "");
      hs.put(hiddenInput("showMenu", renders.entities.client.MENU_COMMENTS), "");

      FormOptionInterface fo = getFormOption(objectName, "add", "add");
      fo.setTitle("ОК");
      setButtonStyle(fo, BUTTON_OK);
      fo.setRenderType(RenderTypes.ajax);
      fo.setJsHandler(JsHandlers.ajax(CONTAINER_ID));
      AbsEnt form = rightForm(hs, fo);
      // AbsEnt form = standartAjaxForm(false, objectName, "add", "add", hs, "ОК",
      // getRenderConstant().OK_IMGPH);
      data.addEnt(form);
      AbsEnt Mw = standartFloatWindow("Добавить комментарий", data);
      addRenderResult(Mw.render());
    } catch (Exception ex) {
      addRenderResult(MyString.getStackExeption(ex));
    }
  }
示例#3
0
  /** составить словарь для комбо, с именем и фамилией, только активные пользователи */
  public void getActiveWithCombo() {
    try {

      Table users = getTable(getModelName());
      Table userProfile = getTable("userProfile");
      Select select = getSelect();
      select.selectDistinct(users.getPrimary());
      select.select(users);
      select.select(userProfile.get("surname"), userProfile.get("name"));
      select.from(users, userProfile);

      select.and(users.get("user_id").eq(userProfile.get("user_id")));
      select.and(userProfile.get("delete_date").isNull());
      select.and(users.get("active_to").isNull());

      select.order(userProfile.get("surname"), OrdTypes.ASC);
      select.executeSelect(getConnection());

      select(select);
      setDictAliases("surname", "name");
      setDictionary();
    } catch (Exception ex) {
      addError(MyString.getStackExeption(ex));
      setStatus(false);
    }
  }
示例#4
0
  /**
   * составить словарь для комбо, с именем и фамилией, только активные пользователи, и только те,
   * которые есть в списке у авторизованного
   */
  public void getActiveWithComboOnlyGroup() {
    try {

      Table users = getTable(getModelName());
      Table userProfile = getTable("userProfile");
      Table userLink = getTable("user_link");
      Select select = getSelect();
      select.selectDistinct(users.getPrimary());
      select.select(users);
      select.select(userProfile.get("surname"), userProfile.get("name"));
      select.from(users, userProfile, userLink);

      select.and(users.get("user_id").eq(userProfile.get("user_id")));
      select.and(userProfile.get("delete_date").isNull());
      select.and(users.get("active_to").isNull());

      List<Condition> cnd = new ArrayList();
      cnd.add(users.get("user_id").eq(getAuthorizedUserId()));

      List<Condition> cnd2 = new ArrayList();
      cnd2.add(users.get("user_id").eq(userLink.get("partner_id")));
      cnd2.add(userLink.get("user_id").eq(getAuthorizedUserId()));
      cnd2.add(userLink.get("delete_date").isNull());
      select.andOrList(cnd, cnd2);

      select.order(userProfile.get("surname"), OrdTypes.ASC);
      select.executeSelect(getConnection());

      select(select);
      setDictAliases("surname", "name");
      setDictionary();
    } catch (Exception ex) {
      addError(MyString.getStackExeption(ex));
      if (project.index.message != null) {
        project.index.message += MyString.getStackExeption(ex);
      }
      setStatus(false);
    }
  }
示例#5
0
  @Override
  public void updateModel() {
    try {
      if (MyString.NotNull(getReq("login"), getReq("user_id"))) {
        // проверить, есть ли уже такой логин
        Table usersTable = getTable("users");
        Select sel = getSelect();
        sel.select(usersTable.get("user_id"), "count", AgrTypes.COUNT);
        sel.from(usersTable);
        sel.and(usersTable.get("login").isLikeLower(getReq("login")));
        sel.and(usersTable.get("login").eq((getReq("login"))));
        sel.and(usersTable.get("user_id").notEq(getReq("user_id")));
        sel.and(usersTable.get("active_to").isNull());
        boolean ok = sel.executeSelect(getConnection());

        if (ok) {
          int count = 0;
          if (!sel.getDinamicList().isEmpty()) {
            DinamicModel model = sel.getDinamicList().get(0);
            try {
              count = Integer.parseInt(model.get("count").toString());
            } catch (Exception e) {
            }
          }
          if (count == 0) {
            super.updateModel();
          } else {
            setStatus(false);
            addError("логин " + getReq("login") + " уже существует у другого пользователя");
          }
        } else {
          setStatus(false);
          addError(sel.getError());
        }
      } else {
        setStatus(false);
        addError("не все параметры переданы");
      }
    } catch (Exception e) {
      setStatus(false);
      addError(MyString.getStackExeption(e));
    }
  }
示例#6
0
 /** обновить данные модели */
 @Override
 public void closeModel() {
   try {
     Model model = getModel(getModelName());
     boolean status = false;
     model.set(getRequestClone());
     if (model.findByPrimary() == false) {
       status = false;
       addError("Не обнаружен первичный ключ " + model.getPrimaryAlias());
     } else {
       model.set("active_to", FormatDate.getCurrentDateInMysql());
       status = model.save();
       getActionResult().model(model);
       for (String name : model.getParams().keySet()) {
         set(name, model.getParams().get(name));
       }
     }
   } catch (Exception ex) {
     addError(MyString.getStackExeption(ex));
   }
 }