From cdcbed9af813b2a02cdc01eefa24db8bec6b51a9 Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期三, 27 三月 2019 12:17:33 +0800
Subject: [PATCH] 主分类 + 子分类 DAO改造

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/goods/SuperGoodsClassServiceImpl.java |  101 ++++++++++++++++----------------------------------
 1 files changed, 32 insertions(+), 69 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/SuperGoodsClassServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/SuperGoodsClassServiceImpl.java
index 80c7fa8..e97b826 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/SuperGoodsClassServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/SuperGoodsClassServiceImpl.java
@@ -1,20 +1,14 @@
 package com.yeshi.fanli.service.impl.goods;
 
-import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
 
 import javax.annotation.Resource;
 
-import org.hibernate.HibernateException;
-import org.hibernate.Query;
-import org.hibernate.Session;
-import org.hibernate.Transaction;
 import org.springframework.cache.annotation.Cacheable;
-import org.springframework.orm.hibernate4.HibernateCallback;
 import org.springframework.stereotype.Service;
 
-import com.yeshi.fanli.dao.goods.SuperGoodsClassDao;
+import com.yeshi.fanli.dao.mybatis.SuperGoodsClassMapper;
 import com.yeshi.fanli.entity.bus.clazz.GoodsClass;
 import com.yeshi.fanli.entity.bus.su.clazz.SuperGoodsClass;
 import com.yeshi.fanli.entity.system.BusinessSystem;
@@ -25,95 +19,64 @@
 public class SuperGoodsClassServiceImpl implements SuperGoodsClassService {
 
 	@Resource
-	private SuperGoodsClassDao superGoodsClassDao;
+	private SuperGoodsClassMapper superGoodsClassMapper;
 	
 	@Resource
 	private BusinessSystemService businessSystemService;
 	
 	
+	@Override
 	@Cacheable(value="classCache", key="'getSuperGoodsClassBySystemId-'+#id")
 	public List<SuperGoodsClass> getSuperGoodsClassBySystemId(long id) {
-		
-		return superGoodsClassDao.list("from SuperGoodsClass sgc where sgc.system.id=? order by sgc.goodsClass.orderby ", new Serializable[]{id});
-		
+		return superGoodsClassMapper.listBySystemId(id);
 	}
 
+	@Override
 	public List<SuperGoodsClass> getSuperGoodsClasss(List<Long> gcIdList) {
-		if (gcIdList.size() == 0) {
+		if (gcIdList == null || gcIdList.size() == 0) {
 			return new ArrayList<SuperGoodsClass>();
 		}
-		StringBuffer sb = new StringBuffer(" from SuperGoodsClass sgc ");
-		Serializable[] serArr = new Serializable[gcIdList.size()];
-		for (int i = 0; i < gcIdList.size(); i++) {
-			if (i == 0) {
-				sb.append(" where sgc.goodsClass.id=? ");
-			} else {
-				sb.append(" or sgc.goodsClass.id=? ");
-			}
-			serArr[i] = gcIdList.get(i);
-		}
-		//sb.append(" order by sgc.goodsClass.orderby  ");
-		String hql = sb.toString();
-
-		return superGoodsClassDao.list(hql, serArr);
-
+		return superGoodsClassMapper.listByGoodsclassIds(gcIdList);
 	}
 
-	public List<SuperGoodsClass> getSuperGoodsClassList(long id, int start,
-			int count, String key) {
-		return superGoodsClassDao.list("from SuperGoodsClass srs where srs.system.id=? and srs.goodsClass.name like ? order by sgc.goodsClass.orderby ",start,count,new Serializable[]{id, "%"+key+"%"});
+	@Override
+	public List<SuperGoodsClass> getSuperGoodsClassList(long id, int start,	int count, String key) {
+		return superGoodsClassMapper.listBySystemIdAmdClassName(start, count, key, id);
 		
 	}
 	
 	@Override
-	public List<SuperGoodsClass> getSuperGoodsClassAll(long id) {
-		return superGoodsClassDao.list("from SuperGoodsClass srs where srs.system.id=?  order by sgc.goodsClass.orderby ",new Serializable[]{id});
+	public Integer deleteSuperGoodsClass(final long gcid, final String platform, final String packageName) {
 		
+		BusinessSystem system = businessSystemService.getBusinessSystem(platform, packageName);
+		if (system == null) {
+			return 0;
+		}
+		return superGoodsClassMapper.deleteBySystemIdAndClassId(gcid, system.getId());
 	}
 
-	public Integer deleteSuperGoodsClass(final long gcid, final String platform,
-			final String packageName) {
-
-		return  (Integer) superGoodsClassDao.excute(new HibernateCallback<Integer>() {
-
-			public Integer doInHibernate(Session session)
-					throws HibernateException {
-				BusinessSystem system = businessSystemService.getBusinessSystem(platform, packageName);
-				Transaction transaction = session.beginTransaction();
-				Query query = session.createQuery("delete SuperGoodsClass shs "
-							+ " where shs.goodsClass.id=? and shs.system.id=?");
-				query.setLong(0, gcid);
-				query.setLong(1, system.getId());
-				int i = query.executeUpdate();
-				transaction.commit();
-				return i ;
-			}
-		});
-	}
-
-	public void addSuperGoodsClass(long gcid, String platform,
-			String packageName) {
+	
+	@Override
+	public void addSuperGoodsClass(long gcid, String platform, String packageName) {
 		BusinessSystem system = businessSystemService.getBusinessSystem(platform,packageName);
-		SuperGoodsClass superGoodsClass = new SuperGoodsClass();
+		
 		GoodsClass goodsClass = new GoodsClass();
 		goodsClass.setId(gcid);
+		
+		SuperGoodsClass superGoodsClass = new SuperGoodsClass();
 		superGoodsClass.setGoodsClass(goodsClass);;
 		superGoodsClass.setSystem(system);
-		superGoodsClassDao.create(superGoodsClass);
+		superGoodsClassMapper.insert(superGoodsClass);
+	}
 	
+	@Override
+	public void deleteSuperGoodsClass(long gcid) {
+		superGoodsClassMapper.deleteByClassId(gcid);
 	}
-
-	public void deleteSuperGoodsClass(final long gcid) {
-		superGoodsClassDao.excute(new HibernateCallback() {
-			public Object doInHibernate(Session session)
-					throws HibernateException {
-				Query query = session.createQuery("delete from SuperGoodsClass sgc where sgc.goodsClass.id=?");
-				query.setParameter(0, gcid);
-				query.executeUpdate();
-				return null;
-			}
-		});
+	
+	@Override
+	public void insertSelective(SuperGoodsClass record){
+		superGoodsClassMapper.insertSelective(record);
 	}
-
-
+	
 }

--
Gitblit v1.8.0