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.
aggregation-platform/src/com/platform/dao/EncodeInfoDao.java

99 lines
2.7 KiB

package com.platform.dao;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.springframework.stereotype.Repository;
import com.platform.entities.EncodedInfoEntity;
/**
* 数据库操作: 实现增、删、改、查
*
* @author wuming
*
*/
@Repository(value = "encodeInfoDao")
public interface EncodeInfoDao {
/**
* 获取查询表下的所有实体(行政区划/系统)信息
*
* @param tableName
* 查询的表名
* @return 所有实体信息:名称和编码
*/
@Select("SELECT code, name FROM ${tableName}")
public List<EncodedInfoEntity> getAllEntityInfo(
@Param("tableName") String tableName);
/**
* 根据实体(行政区划/系统)的名称查询编码
*
* @param code
* 实体编码
* @param tableName
* 查询的表名
* @return 编码是主键,查询结果最多只有一条记录
*/
@Select("SELECT name FROM ${tableName} WHERE code = #{code}")
public String getEncodeNameByCode(@Param("code") String code,
@Param("tableName") String tableName);
/**
* 根据实体(行政区划/系统)的编码查询名称
*
* @param name
* 实体名称
* @param tableName
* 查询的表名
* @return 名称不是主键,查询结果可能会有多个
*/
@Select("SELECT code FROM ${tableName} WHERE name = #{name}")
public List<String> getEncodeCodeByName(@Param("name") String name,
@Param("tableName") String tableName);
/**
* 根据实体(行政区划/系统)的编码,更新实体的名称
*
* @param code
* 系统编码
* @param tableName
* 查询的表名
* @return
*/
@Update("UPDATE ${tableName} SET name = #{name} WHERE code = #{code}")
public int updateEncodeNameByCode(@Param("code") String code,
@Param("name") String name, @Param("tableName") String tableName);
/**
* 向表中插入实体(行政区划/系统)信息
*
* @param efe
* 插入的实体信息
* @param tableName
* 表名
* @return
*/
@Insert("INSERT INTO ${tableName} (code, name) VALUES (#{efe.code}, #{efe.name})")
public int insertEncodeEntity(@Param("efe") EncodedInfoEntity efe,
@Param("tableName") String tableName);
/**
* 删除表中的实体(行政区划/系统)
*
* @param code
* 实体的编码
* @param tableName
* 表名
* @return
*/
@Delete("DELETE FROM ${tableName} WHERE code = #{code}")
public int deleteEncodeByCode(@Param("code") String code,
@Param("tableName") String tableName);
}