| | |
| | | package com.yeshi.buwan.dao.user; |
| | | |
| | | import com.yeshi.buwan.dao.base.BaseDao; |
| | | import org.hibernate.HibernateException; |
| | | import org.hibernate.Session; |
| | | import org.springframework.orm.hibernate4.HibernateCallback; |
| | | import org.springframework.stereotype.Repository; |
| | | |
| | | import com.yeshi.buwan.domain.user.LoginUser; |
| | | import org.yeshi.utils.StringUtil; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | @Repository |
| | | public class LoginUserDao extends BaseDao<LoginUser> { |
| | | |
| | | |
| | | public LoginUser selectByPrimaryKeyForUpdate(String id) { |
| | | return (LoginUser) excute(new HibernateCallback<LoginUser>() { |
| | | @Override |
| | | public LoginUser doInHibernate(Session session) throws HibernateException { |
| | | List<LoginUser> userList = session.createSQLQuery("select * from wk_loginuser lu where lu.id=? for update").addEntity(LoginUser.class).setParameter(0, id).list(); |
| | | if (userList != null && userList.size() > 0) |
| | | return userList.get(0); |
| | | return null; |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | public void updateSelective(LoginUser loginUser) { |
| | | |
| | | String hql = "update LoginUser u set "; |
| | | List<Serializable> params = new ArrayList<>(); |
| | | List<String> sets = new ArrayList<>(); |
| | | if (loginUser.getPhone() != null) { |
| | | sets.add("u.phone=?"); |
| | | params.add(loginUser.getPhone()); |
| | | } |
| | | |
| | | if (loginUser.getName() != null) { |
| | | sets.add("u.name=?"); |
| | | params.add(loginUser.getName()); |
| | | } |
| | | |
| | | |
| | | if (loginUser.getPortrait() != null) { |
| | | sets.add("u.portrait=?"); |
| | | params.add(loginUser.getPortrait()); |
| | | } |
| | | |
| | | if (loginUser.getSex() != null) { |
| | | sets.add("u.sex=?"); |
| | | params.add(loginUser.getSex()); |
| | | } |
| | | |
| | | if (loginUser.getSign() != null) { |
| | | sets.add("u.sign=?"); |
| | | params.add(loginUser.getSign()); |
| | | } |
| | | |
| | | if (loginUser.getBirthday() != null) { |
| | | sets.add("u.birthday=?"); |
| | | params.add(loginUser.getBirthday()); |
| | | } |
| | | |
| | | if (loginUser.getWxOpenId() != null) { |
| | | sets.add("u.wxOpenId=?"); |
| | | params.add(loginUser.getWxOpenId()); |
| | | } |
| | | |
| | | if (loginUser.getWxUnionId() != null) { |
| | | sets.add("u.wxUnionId=?"); |
| | | params.add(loginUser.getWxUnionId()); |
| | | } |
| | | |
| | | if (loginUser.getQqOpenId() != null) { |
| | | sets.add("u.qqOpenId=?"); |
| | | params.add(loginUser.getQqOpenId()); |
| | | } |
| | | |
| | | if (sets.size() > 0) { |
| | | params.add(loginUser.getId()); |
| | | Serializable[] ps = new Serializable[params.size()]; |
| | | params.toArray(ps); |
| | | update(hql + StringUtil.concat(sets, ",") + " where u.id=?", ps); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |