You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
3.3 KiB
100 lines
3.3 KiB
package com.fr.plugin.cpic.db.dao; |
|
|
|
import com.fanruan.api.util.StringKit; |
|
import com.fr.plugin.cpic.db.entity.CpicHomeEntity; |
|
import com.fr.stable.db.dao.BaseDAO; |
|
import com.fr.stable.db.dao.DAOProvider; |
|
import com.fr.stable.db.session.DAOSession; |
|
import com.fr.stable.query.QueryFactory; |
|
import com.fr.stable.query.condition.QueryCondition; |
|
import com.fr.stable.query.restriction.RestrictionFactory; |
|
|
|
import java.util.HashMap; |
|
import java.util.List; |
|
import java.util.Map; |
|
|
|
public class CpicHomeDao extends BaseDAO<CpicHomeEntity> { |
|
|
|
public CpicHomeDao(DAOSession daoSession) { |
|
super(daoSession); |
|
} |
|
|
|
/** |
|
* 如果重写了getEntityClass方法,就可以不重写其他所有DAO<T>接口中的方法 |
|
* 推荐只重写getEntityClass方法,保留原写法作为兼容 |
|
* |
|
* @return |
|
*/ |
|
@Override |
|
protected Class<CpicHomeEntity> getEntityClass() { |
|
return CpicHomeEntity.class; |
|
} |
|
|
|
public final static DAOProvider DAO = new DAOProvider() { |
|
@Override |
|
public Class getEntityClass() { |
|
return CpicHomeEntity.class; |
|
} |
|
|
|
@Override |
|
public Class<? extends BaseDAO> getDAOClass() { |
|
return CpicHomeDao.class; |
|
} |
|
}; |
|
|
|
public CpicHomeEntity findById(String id) throws Exception { |
|
QueryCondition condition = QueryFactory.create(); |
|
if (StringKit.isNotBlank(id)) { |
|
condition.addRestriction(RestrictionFactory.eq("id", id)); |
|
condition.addRestriction(RestrictionFactory.eq("del", "0")); |
|
} else { |
|
return null; |
|
} |
|
return findOne(condition); |
|
} |
|
|
|
public CpicHomeEntity findByName(String name, String id) throws Exception { |
|
QueryCondition condition = QueryFactory.create(); |
|
if (StringKit.isNotBlank(id)) { |
|
condition.addRestriction(RestrictionFactory.neq("id", id)); |
|
} |
|
if (StringKit.isNotBlank(name)) { |
|
condition.addRestriction(RestrictionFactory.eq("name", name)); |
|
condition.addRestriction(RestrictionFactory.eq("del", "0")); |
|
} else { |
|
return null; |
|
} |
|
return findOne(condition); |
|
} |
|
|
|
public CpicHomeEntity findByPath(String path, String id) throws Exception { |
|
QueryCondition condition = QueryFactory.create(); |
|
if (StringKit.isNotBlank(id)) { |
|
condition.addRestriction(RestrictionFactory.neq("id", id)); |
|
} |
|
if (StringKit.isNotBlank(path)) { |
|
condition.addRestriction(RestrictionFactory.eq("path", path)); |
|
condition.addRestriction(RestrictionFactory.eq("del", "0")); |
|
} else { |
|
return null; |
|
} |
|
return findOne(condition); |
|
} |
|
|
|
public void logicDel(String id) throws Exception { |
|
Map<String, Object> updateParams = new HashMap<>(); |
|
updateParams.put("del", "1"); |
|
QueryCondition condition = QueryFactory.create(); |
|
if (StringKit.isNotBlank(id)) { |
|
condition.addRestriction(RestrictionFactory.eq("id", id)); |
|
update(updateParams, condition); |
|
} |
|
} |
|
|
|
public List<CpicHomeEntity> findList() throws Exception { |
|
QueryCondition condition = QueryFactory.create(); |
|
condition.addRestriction(RestrictionFactory.eq("del", "0")); |
|
condition.addSort("editDate", true); |
|
return find(condition); |
|
} |
|
}
|
|
|