edit user
parent
2110c21be7
commit
34c5e79cbb
@ -0,0 +1,21 @@
|
|||||||
|
package ru.ulstu.user.controller;
|
||||||
|
|
||||||
|
import ru.ulstu.user.model.User;
|
||||||
|
|
||||||
|
import javax.faces.component.UIComponent;
|
||||||
|
import javax.faces.context.FacesContext;
|
||||||
|
import javax.faces.convert.Converter;
|
||||||
|
import javax.faces.convert.FacesConverter;
|
||||||
|
|
||||||
|
@FacesConverter(value = "userDegreeConverter")
|
||||||
|
public class UserDegreeConverter implements Converter {
|
||||||
|
@Override
|
||||||
|
public Object getAsObject(FacesContext context, UIComponent component, String value) {
|
||||||
|
return User.UserDegree.valueOf(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getAsString(FacesContext context, UIComponent component, Object value) {
|
||||||
|
return ((User.UserDegree) value).name();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,39 @@
|
|||||||
|
package ru.ulstu.user.controller;
|
||||||
|
|
||||||
|
import ru.ulstu.core.util.FacesUtil;
|
||||||
|
import ru.ulstu.user.model.User;
|
||||||
|
import ru.ulstu.user.service.UserService;
|
||||||
|
|
||||||
|
import javax.annotation.PostConstruct;
|
||||||
|
import javax.faces.view.ViewScoped;
|
||||||
|
import javax.inject.Inject;
|
||||||
|
import javax.inject.Named;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Named
|
||||||
|
@ViewScoped
|
||||||
|
public class UserView implements Serializable {
|
||||||
|
@Inject
|
||||||
|
private UserService userService;
|
||||||
|
|
||||||
|
private User user;
|
||||||
|
|
||||||
|
@PostConstruct
|
||||||
|
public void init() {
|
||||||
|
user = userService.findById(Integer.valueOf(FacesUtil.getRequestParams().get("id")));
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getUser() {
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUser(User user) {
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<User.UserDegree> getDegrees() {
|
||||||
|
return Arrays.asList(User.UserDegree.values());
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,105 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||||
|
xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:p="http://primefaces.org/ui"
|
||||||
|
xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:f="http://java.sun.com/jsf/core">
|
||||||
|
<ui:composition template="/basicTemplate.xhtml">
|
||||||
|
<ui:define name="header">
|
||||||
|
Редактирование статьи
|
||||||
|
</ui:define>
|
||||||
|
<ui:define name="content">
|
||||||
|
<style>
|
||||||
|
#mainForm\:paperStatus > tbody > tr {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mainForm\:paperStatus > tbody > tr > td {
|
||||||
|
border: none;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mainForm\:paperPanel > tbody > tr {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mainForm\:paperPanel > tbody > tr > td {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-editor.ui-widget-content {
|
||||||
|
background: white !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p:panel id="panel" header="Редактирование пользователя" style="margin-bottom:10px;">
|
||||||
|
<p:panelGrid cellpadding="5" id="userPanel">
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Имя:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:inputText id="firstName" required="true" value="#{userView.user.firstName}"/>
|
||||||
|
<p:message for="firstName"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Фамилия:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:inputText id="lastName" required="true" value="#{userView.user.lastName}"/>
|
||||||
|
<p:message for="lastName"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Отчество:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:inputText id="patr" value="#{userView.user.patronymic}"/>
|
||||||
|
<p:message for="patr"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Email:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:outputLabel value="#{userView.user.email}"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Дата рождения:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:calendar id="bDate" required="true" value="#{userView.user.birthDate}"/>
|
||||||
|
<p:message for="bDate"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<h:outputLabel value="Ученая степень:"/>
|
||||||
|
</p:column>
|
||||||
|
<p:column>
|
||||||
|
<p:selectOneMenu id="degree" value="#{userView.user.degree}"
|
||||||
|
converter="#{userDegreeConverter}">
|
||||||
|
<f:attribute name="collectionType" value="java.util.HashSet"/>
|
||||||
|
<f:selectItem itemLabel="Нет" itemValue="#{null}" noSelectionOption="true"/>
|
||||||
|
<f:selectItems value="#{userView.degrees}"
|
||||||
|
var="degree"
|
||||||
|
itemLabel="#{degree.degreeName}"
|
||||||
|
itemValue="#{degree}"/>
|
||||||
|
</p:selectOneMenu>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
<p:row>
|
||||||
|
<p:column>
|
||||||
|
<p:commandButton action="#{paperView.save}" value="Сохранить" ajax="true" process="@form"
|
||||||
|
update="messages @form"/>
|
||||||
|
</p:column>
|
||||||
|
</p:row>
|
||||||
|
</p:panelGrid>
|
||||||
|
</p:panel>
|
||||||
|
</ui:define>
|
||||||
|
</ui:composition>
|
||||||
|
</html>
|
Loading…
Reference in New Issue