package com.db.service.dao;

import com.db.service.model.TTest;
import com.db.service.model.TTest2;
import com.elab.core.aop.annotations.FieldParam;
import com.elab.core.aop.annotations.XmlGroupName;
import com.elab.core.bean.PageModel;
import com.elab.core.dao.IBaseDaoSupport;
import com.elab.core.dao.model.ListDynamicSearch;
import org.springframework.jdbc.core.RowMapper;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
 * @author Liukx
 * @create 2018-04-20 18:47
 * @email liukx@elab-plus.com
 **/
@XmlGroupName("test")
public interface ITestDao extends IBaseDaoSupport<TTest> {

    public TTest getTestObject(String id);

    public TTest selectByName(@FieldParam("id") String id, @FieldParam("username") String username);

    public List<TTest2> getTestList(TTest id);

    public List<String> testListString(TTest id);

    public List<TTest> getTestList2(TTest id, ListDynamicSearch search);


    public List<TTest> getTestList(Map<String, Object> objectMap, RowMapper rowMapper);

    public int[] batchInsert(Object list);

    PageModel<Map> getTestPageListMap(PageModel page, LinkedHashMap params) throws Exception;


    public int updateByExample(TTest test);

    public int updateUserInfo(LinkedHashMap params);

}
