package com.hzya.frame.sys.databaseFields.dao.impl;

import com.hzya.frame.basedao.dao.MybatisGenericDao;
import com.hzya.frame.sys.databaseFields.dao.IDatabaseFieldsMapper;
import com.hzya.frame.sys.databaseFields.entity.DatabaseFields;
import org.springframework.stereotype.Service;

import java.util.List;


/**
 * @description: 数据库字段表  dao
 * @tableName: sys_database_fields
 * @entityName: DatabaseFields
 * @author: gjh
 * @history:1.0
 */
@Service
public class DatabaseFieldsMapperImpl extends MybatisGenericDao<DatabaseFields, String> implements IDatabaseFieldsMapper {

    @Override
    public DatabaseFields entity_get(String id) {

        DatabaseFields o = (DatabaseFields) super.selectOne(getSqlIdPrifx() + "entity_get", id);
        return o;

    }

    //查询 采用==查询   entity_list_base
    @Override
    public List<DatabaseFields> entity_list_base(DatabaseFields entity) {

        List<DatabaseFields> o = super.query(getSqlIdPrifx() + "entity_list_base", entity);
        return o;

    }

    //  查询符合条件的数量
    @Override
    public Integer entity_count(DatabaseFields entity) {

        Integer o = (Integer) super.selectOne(getSqlIdPrifx() + "entity_count", entity);
        return o;

    }

    //分页查询列表 采用like格式 entity_list_like
    @Override
    public List<DatabaseFields> entity_list_like(DatabaseFields entity) {

        List<DatabaseFields> o = super.query(getSqlIdPrifx() + "entity_list_like", entity);
        return o;

    }

    //查询列表 字段采用or格式   entity_list_or
    @Override
    public List<DatabaseFields> entity_list_or(DatabaseFields entity) {

        List<DatabaseFields> o = super.query(getSqlIdPrifx() + "entity_list_or", entity);
        return o;

    }

    //新增  entity_insert
    @Override
    public DatabaseFields entity_insert(DatabaseFields entity) {

        entity = super.save(getSqlIdPrifx() + "entity_insert", entity);
        return entity;
    }

    //修改  entity_update
    @Override
    public Integer entity_update(DatabaseFields entity) {

        Integer o = super.delete(getSqlIdPrifx() + "entity_update", entity);
        return o;

    }

    //逻辑删除    entity_delete
    @Override
    public Integer entity_logicDelete(DatabaseFields entity) {

        Integer o = super.delete(getSqlIdPrifx() + "entity_logicDelete", entity);
        return o;

    }

    //逻辑删除多条件
    @Override
    public Integer entity_logicDelete_Multi_Condition(DatabaseFields entity) {

        Integer o = super.update(getSqlIdPrifx() + "entity_logicDelete_Multi_Condition", entity);
        return o;

    }

    //物理删除
    @Override
    public Integer entity_delete(DatabaseFields entity) {
        Integer o = super.delete(getSqlIdPrifx() + "entity_delete", entity);
        return o;
    }

}
