Commit d1b6de18 by Juho Juopperi

AccountEventBean

1 parent f6d0f3f3
......@@ -21,6 +21,7 @@ import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.AccountEventFacade;
import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.Role;
......@@ -91,10 +92,10 @@ public class AccountEventBean implements AccountEventBeanLocal {
*/
@Override
@RolesAllowed(ShopPermission.S_SHOP_PRODUCTS)
public void shopCash(User shoppingUser, Map<Product, BigDecimal> shopMap, boolean buyInstant) {
public void shopCash(EventUser shoppingUser, Map<Product, BigDecimal> shopMap, boolean buyInstant) {
logger.debug("Shoping cash. buyinstant {}", buyInstant);
IUser seller = permbean.getCurrentUser();
shoppingUser = userbean.findById(shoppingUser.getId());
EventUser seller = permbean.getCurrentUser();
shoppingUser = userbean.findEventUserById(shoppingUser.getId());
BigDecimal tot = BigDecimal.ZERO;
......@@ -126,7 +127,7 @@ public class AccountEventBean implements AccountEventBeanLocal {
accountfacade.create(ac);
}
userbean.mergeChanges(shoppingUser);
userbean.mergeEventUserChanges(shoppingUser);
}
......
......@@ -28,11 +28,13 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.GroupMembershipFacade;
import fi.insomnia.bortal.facade.PlaceGroupFacade;
import fi.insomnia.bortal.facade.RoleFacade;
import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.facade.UserImageFacade;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent;
......@@ -69,6 +71,9 @@ public class UserBean implements UserBeanLocal {
@EJB
private UserFacade userFacade;
@EJB
private EventUserFacade eventUserFacade;
@PersistenceContext
private EntityManager em;
......@@ -370,7 +375,7 @@ public class UserBean implements UserBeanLocal {
UserImage ret = new UserImage(user);
ret.setMimeType(currimage.getMimeType());
User curruser = permbean.getCurrentUser();
User curruser = permbean.getCurrentUser().getUser();
ret.setDescription("Cropped by: [" + curruser.getId() + "] " + curruser.getWholeName() + " from image: " + currimage.getId());
ret.setImageData(naamaout.toByteArray());
......@@ -398,4 +403,21 @@ public class UserBean implements UserBeanLocal {
IUser usr = userFacade.findByLogin(login);
return usr != null;
}
@Override
public EventUser findEventUserById(Integer integer) {
return eventUserFacade.find(integer);
}
@Override
@RolesAllowed(SpecialPermission.S_USER)
public EventUser mergeEventUserChanges(EventUser user) {
if (!permbean.isCurrentUser(user) && !permbean.hasPermission(UserPermission.MODIFY)) {
loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to save another user: " + user);
throw new EJBAccessException("Not enough rights to save user");
}
EventUser ret = eventUserFacade.merge(user);
return ret;
}
}
......@@ -7,10 +7,10 @@ import java.util.Map;
import javax.ejb.Local;
import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User;
@Local
public interface AccountEventBeanLocal {
......@@ -23,7 +23,7 @@ public interface AccountEventBeanLocal {
List<Role> getRolesFromAccountEvents(IUser u);
void shopCash(User shoppingUser, Map<Product, BigDecimal>
void shopCash(EventUser shoppingUser, Map<Product, BigDecimal>
shopMap, boolean buyInstant);
BigDecimal getAccountBalance(IUser user);
......
......@@ -5,6 +5,7 @@ import java.util.List;
import javax.ejb.Local;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Role;
......@@ -37,6 +38,8 @@ public interface UserBeanLocal {
User findById(Integer integer);
EventUser findEventUserById(Integer integer);
GroupMembership findToken(String token);
void createFromToken(User user, String token);
......@@ -51,4 +54,6 @@ public interface UserBeanLocal {
boolean invite(String invitemail, String url);
EventUser mergeEventUserChanges(EventUser shoppingUser);
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!