package thyyxxk.webserver.dao.his.technologyArchives;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import thyyxxk.webserver.entity.technologyArchives.TechnologyArchives3;

import java.util.List;

@Mapper
public interface TechnologyArchives3Dao extends BaseMapper<TechnologyArchives3> {

    @Select("<script> " +
            " select * from technology_archives3 where 1 = 1 " +
            " <if test=\"socialNo != null and socialNo != '' \"> " +
            " and social_no = #{socialNo} " +
            " </if> " +
            " <if test=\"account != null and account != '' \"> " +
            " and account = #{account} " +
            " </if> " +
            "</script> ")
    List<TechnologyArchives3> selectThirdListByCode(@Param("socialNo") String socialNo, @Param("account") String account);

    @Select(" select * from technology_archives3 where social_no = #{socialNo} and id = #{id} ")
    TechnologyArchives3 selectTechnologyArchives3ById(@Param("socialNo") String socialNo, @Param("id") Integer id);

    @Update("<script>" +
            "update technology_archives3 " +
            "<trim prefix=\"set\" suffixOverrides=\",\">" +
            "<if test=\"socialNo != null and socialNo != '' \">" +
            "social_no = #{socialNo}, " +
            "</if>" +
            "<if test=\"id != null and id != '' \">" +
            "id = #{id}, " +
            "</if>" +
            "<if test=\"beginTime != null and beginTime != '' \">" +
            "begin_time = #{beginTime}, " +
            "</if>" +
            "<if test=\"endTime != null and endTime != '' \">" +
            "end_time = #{endTime}, " +
            "</if>" +
            "<if test=\"unit != null and unit != '' \">" +
            "unit = #{unit}, " +
            "</if>" +
            "<if test=\"title != null and title != '' \">" +
            "title = #{title}, " +
            "</if>" +
            "<if test=\"workTime != null and workTime != '' \">" +
            "work_time = #{workTime}, " +
            "</if>" +
            "<if test=\"speciality != null and speciality != '' \">" +
            "speciality = #{speciality}, " +
            "</if>" +
            "</trim>" +
            "where social_no = #{socialNo} and id = #{id} " +
            "</script>")
    int updateTechnologyArchives3ById(TechnologyArchives3 third);

    @Select(" select isnull(max(id), 0) as id from technology_archives3 where social_no = #{socialNo} ")
    int selectTechnologyArchives3MaxId(@Param("socialNo") String socialNo);

    @Update(" delete from technology_archives3 where social_no = #{socialNo} and id = #{id} ")
    int delTechnologyArchives3ByCode(@Param("socialNo") String socialNo, @Param("id") Integer id);

}
