From 31f64845425a6ca1b6003ba77d01bafdbdacb8e2 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期一, 25 三月 2019 09:29:47 +0800 Subject: [PATCH] 部分对象清理 + RecommendBannerV2Dao改造 --- fanli/src/main/java/com/yeshi/fanli/service/impl/goods/RecommendBannerV2ServiceImpl.java | 197 ------------------------------------------------ 1 files changed, 2 insertions(+), 195 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/RecommendBannerV2ServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/RecommendBannerV2ServiceImpl.java index d5ef642..4cae546 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/RecommendBannerV2ServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/RecommendBannerV2ServiceImpl.java @@ -16,7 +16,7 @@ import org.springframework.orm.hibernate4.HibernateCallback; import org.springframework.stereotype.Service; -import com.yeshi.fanli.dao.goods.RecommendBannerV2Dao; +import com.yeshi.fanli.dao.mybatis.RecommendBannerV2Mapper; import com.yeshi.fanli.entity.admin.RecommendBannerV2Admin; import com.yeshi.fanli.entity.bus.recommend.RecommendBannerV2; import com.yeshi.fanli.entity.bus.su.recommend.SuperRecommendBannerV2; @@ -31,7 +31,7 @@ public class RecommendBannerV2ServiceImpl implements RecommendBannerV2Service { @Resource - private RecommendBannerV2Dao recommendBannerV2Dao; + private RecommendBannerV2Mapper recommendBannerV2Mapper; @Resource private SuperRecommendBannerV2Service superRecommendBannerV2Service; @@ -40,198 +40,5 @@ private BusinessSystemService businessSystemService; - - public List<RecommendBannerV2> getRecommendBanners() { - return recommendBannerV2Dao.list("from RecommendBannerV2 rb order by rb.orderby"); - } - - public void addRecommendBanner(RecommendBannerV2 banner) { - banner.setCreatetime(java.lang.System.currentTimeMillis()); - recommendBannerV2Dao.create(banner); - } - - @SuppressWarnings("unchecked") - public List<RecommendBannerV2Admin> getRecommendBanners(int pageIndex, String platform, String packages, String key) { - final int strat = pageIndex * Constant.PAGE_SIZE; - platform = Utils.getMap().get(platform); - BusinessSystem system = businessSystemService.getBusinessSystem(platform, packages); - List<RecommendBannerV2> recommendBannerList = null; - List<SuperRecommendBannerV2> superRecommendBannerList = null; - - Map<Long, RecommendBannerV2Admin> recommendBannerAdminMap = new HashMap<Long, RecommendBannerV2Admin>(); - - List<RecommendBannerV2Admin> recommendBannerAdmin = new ArrayList<RecommendBannerV2Admin>(); - - if (system == null) { - - if ("".equals(key.trim())) { - recommendBannerList = (List<RecommendBannerV2>) recommendBannerV2Dao.excute(new HibernateCallback<List<RecommendBannerV2>>() { - public List<RecommendBannerV2> doInHibernate(Session session) throws HibernateException { - Query query = session.createQuery(" from RecommendBannerV2 rb order by rb.orderby "); - query.setFirstResult(strat); - query.setMaxResults(Constant.PAGE_SIZE); - return query.list(); - } - }); - } else { - final String likekey = "%" + key + "%"; - recommendBannerList = (List<RecommendBannerV2>) recommendBannerV2Dao.excute(new HibernateCallback<List<RecommendBannerV2>>() { - public List<RecommendBannerV2> doInHibernate(Session session) throws HibernateException { - Query query = session.createQuery(" from RecommendBannerV2 rs where rs.name like ? order by rs.orderby "); - query.setFirstResult(strat); - query.setMaxResults(Constant.PAGE_SIZE); - query.setParameter(0, likekey); - return query.list(); - } - }); - } - - List<Long> rsIdList = new ArrayList<Long>(); - - for (RecommendBannerV2 rs : recommendBannerList) { - rsIdList.add(rs.getId()); - } - - superRecommendBannerList = superRecommendBannerV2Service.getSuperRecommendBannersByBanners(rsIdList); - Map<Long, List<BusinessSystem>> superMap = new HashMap<Long, List<BusinessSystem>>(); - Long rsId = null; - List<BusinessSystem> systemList = null; - - for (SuperRecommendBannerV2 srs : superRecommendBannerList) { - rsId = srs.getRecommendBanner().getId(); - systemList = superMap.get(rsId); - if (systemList == null) { - systemList = new ArrayList<BusinessSystem>(); - } - systemList.add(srs.getSystem()); - superMap.put(rsId, systemList); - } - - RecommendBannerV2Admin rsa = null; - for (RecommendBannerV2 recommendBanner : recommendBannerList) { - long id = recommendBanner.getId(); - rsa = recommendBannerAdminMap.get(id); - if (rsa == null) { - rsa = new RecommendBannerV2Admin(); - } - List<BusinessSystem> list = superMap.get(id); - if (list != null) { - rsa.getSystemList().addAll(superMap.get(id)); - } - rsa.setRecommendBanner(recommendBanner); - recommendBannerAdminMap.put(id, rsa); - } - - } else if (system != null) { - - if ("".equals(key.trim())) { - superRecommendBannerList = superRecommendBannerV2Service.getSuperRecommendBannerBySystemId(system.getId(), strat, Constant.PAGE_SIZE); - } else { - String likekey = "%" + key + "%"; - superRecommendBannerList = superRecommendBannerV2Service.getSuperRecommendBannerBySystemId(system.getId(), strat, Constant.PAGE_SIZE, - likekey); - } - - List<Long> rsIdList = new ArrayList<Long>(); - for (SuperRecommendBannerV2 superRecommendBanner : superRecommendBannerList) { - RecommendBannerV2 recommendBanner = superRecommendBanner.getRecommendBanner(); - rsIdList.add(recommendBanner.getId()); - } - - superRecommendBannerList = superRecommendBannerV2Service.getSuperRecommendBannersByBanners(rsIdList); - RecommendBannerV2Admin rsa = null; - for (SuperRecommendBannerV2 superRecommendBanner : superRecommendBannerList) { - RecommendBannerV2 recommendBanner = superRecommendBanner.getRecommendBanner(); - rsa = recommendBannerAdminMap.get(recommendBanner.getId()); - if (rsa == null) { - rsa = new RecommendBannerV2Admin(recommendBanner); - } - rsa.getSystemList().add(superRecommendBanner.getSystem()); - recommendBannerAdminMap.put(recommendBanner.getId(), rsa); - } - - } - - Map<Long, RecommendBannerV2Admin> obMap = (LinkedHashMap<Long, RecommendBannerV2Admin>) Utils.orderBy(recommendBannerAdminMap); - - Collection<RecommendBannerV2Admin> values = obMap.values(); - - recommendBannerAdmin.addAll(values); - - return recommendBannerAdmin; - - } - - public long getCount() { - return recommendBannerV2Dao.getCount("select count(*) from RecommendBannerV2"); - } - - @Transactional - public void deleteBanners(final long[] rbids) { - superRecommendBannerV2Service.deleteSuperRecommendBanners(rbids); - recommendBannerV2Dao.excute(new HibernateCallback() { - public Object doInHibernate(Session session) throws HibernateException { - - StringBuffer sb = new StringBuffer("delete b from yeshi_ec_recommend_banner_v2 b "); - for (int i = 0; i < rbids.length; i++) { - if (i == 0) { - sb.append(" where b.id=? "); - } else { - sb.append(" or b.id=?"); - } - } - Query query = session.createSQLQuery(sb.toString()); - for (int i = 0; i < rbids.length; i++) { - query.setLong(i, rbids[i]); - } - query.executeUpdate(); - return null; - } - }); - } - - public RecommendBannerV2 getRecommendBanner(long id) { - RecommendBannerV2 banner = recommendBannerV2Dao.find(RecommendBannerV2.class, id); - return banner; - } - - public void updateBanner(RecommendBannerV2 banner) { - recommendBannerV2Dao.update(banner); - } - - public int getCount(String platform, String packages, final String key) { - platform = Utils.getMap().get(platform); - final BusinessSystem system = businessSystemService.getBusinessSystem(platform, packages); - return (Integer) recommendBannerV2Dao.excute(new HibernateCallback<Integer>() { - - public Integer doInHibernate(Session session) throws HibernateException { - String k = "%" + key + "%"; - Query query; - if (system == null) { - query = session.createQuery("select count(rb.id) from RecommendBannerV2 rb where rb.name like ? "); - query.setParameter(0, k); - } else { - query = session - .createQuery("select count(srb.id) from SuperRecommendBannerV2 srb where srb.system.id = ? and srb.recommendBanner.name like ?"); - query.setParameter(0, system.getId()); - query.setParameter(1, k); - } - Long result = (Long) query.uniqueResult(); - int intValue = result.intValue(); - return intValue; - } - }); - } - - public void updateBannerJumpDetail(final long id) { - recommendBannerV2Dao.excute(new HibernateCallback() { - - public Object doInHibernate(Session session) throws HibernateException { - Query query = session.createQuery("update RecommendBannerV2 rb set rb.jumpDetail.id = NULL where rb.jumpDetail.id = ?"); - query.setParameter(0, id); - return query.executeUpdate(); - } - }); - } } -- Gitblit v1.8.0