luoyb
2021-02-18 3d8f7b941393760faa8fb67af9baa95d5c2c8457
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpBaseInfoMapper.java
New file
@@ -0,0 +1,90 @@
package cc.mrbird.febs.server.hr.mapper;
import cc.mrbird.febs.server.hr.entity.EmpBaseInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
import java.util.Date;
import java.util.List;
/**
 * name:EmpBaseinfo
 * package:cc.mrbird.febs.server.hr.controller
 * description:实体Mapper
 *
 * @author luoyibo
 * @date 2021-01-30 08:04:50
 * @since JDK1.8
 */
public interface EmpBaseInfoMapper extends BaseMapper<EmpBaseInfo> {
    /**
     * 根据Id批量逻辑删除记录
     * <p>
     * date luoyibo
     *
     * @param list       待删除Id
     * @param operatorId 操作员Id
     * @return void
     * @author: 2021-01-30 08:04:50
     */
    @Update("<script> " +
            " UPDATE t_emp_baseinfo SET delFlag = 1,\n" +
            " modifyTime = NOW(),\n" +
            " modifier = #{operatorId}, \n" +
            " version = version+1 \n" +
            " WHERE empId IN \n" +
            "        <foreach item=\"delId\" collection=\"list\" open=\"(\" close=\")\" separator=\",\">\n" +
            "          #{delId}  \n" +
            "        </foreach>\n" +
            "</script>")
    void logicDeleteByIds(@Param("list") List<String> list, @Param("operatorId") String operatorId);
    /**
     * 将记录从暂存状态转为正常状态
     * <p>
     * date 2021-02-04 21:28
     *
     * @param list       待转换记录标识
     * @param operatorId 操作员
     * @return int
     * @author: luoyibo
     */
    @Update("<script> " +
            " UPDATE t_emp_baseinfo SET delFlag = 0,\n" +
            " modifyTime = NOW(),\n" +
            " modifier = #{operatorId}, \n" +
            " version = version+1 \n" +
            " WHERE empId IN \n" +
            "        <foreach item=\"delId\" collection=\"list\" open=\"(\" close=\")\" separator=\",\">\n" +
            "          #{delId}  \n" +
            "        </foreach>\n" +
            "</script>")
    int momentToNormal(@Param("list") List<String> list, @Param("operatorId") String operatorId);
    /**
     *
     * 关闭员工档案
     *
     * date 2021-02-18 12:54
     * @author: luoyibo
     * @param ids 待关闭档案员工 Id
     * @param dimissionType 离职类型
     * @param dimissionDate 离职日期
     * @param remark 备注
     * @return boolean
     */
    @Update("<script> " +
            " UPDATE t_emp_baseinfo SET empStatus = 1,\n" +
            " dimissionDate = #{dimissionDate},\n" +
            " dimissionType = #{dimissionType},\n" +
            " remark = #{remark},\n" +
            " modifyTime = NOW(),\n" +
            " modifier = #{operatorId}, \n" +
            " version = version+1 \n" +
            " WHERE empId IN \n" +
            "        <foreach item=\"delId\" collection=\"list\" open=\"(\" close=\")\" separator=\",\">\n" +
            "          #{delId}  \n" +
            "        </foreach>\n" +
            "</script>")
    int closeEmpArchives(@Param("list") List<String> list, @Param("dimissionType") String dimissionType, @Param("dimissionDate") Date dimissionDate, @Param("remark") String remark, @Param("operatorId") String operatorId);
}