<?xml version="1.0" encoding="UTF-8"?> <!-- ~ ~ Copyright (c) 2018-2025, lengleng All rights reserved. ~ ~ Redistribution and use in source and binary forms, with or without ~ modification, are permitted provided that the following conditions are met: ~ ~ Redistributions of source code must retain the above copyright notice, ~ this list of conditions and the following disclaimer. ~ Redistributions in binary form must reproduce the above copyright ~ notice, this list of conditions and the following disclaimer in the ~ documentation and/or other materials provided with the distribution. ~ Neither the name of the yifu4cloud.com developer nor the names of its ~ contributors may be used to endorse or promote products derived from ~ this software without specific prior written permission. ~ Author: lengleng (wangiegie@gmail.com) ~ --> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeInfoMapper"> <resultMap id="tEmployeeInfoMap" type="com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo"> <id property="id" column="ID"/> <result property="empCode" column="EMP_CODE"/> <result property="empNatrue" column="EMP_NATRUE"/> <result property="empName" column="EMP_NAME"/> <result property="empIdcard" column="EMP_IDCARD"/> <result property="validityStart" column="VALIDITY_START"/> <result property="validityEnd" column="VALIDITY_END"/> <result property="empSex" column="EMP_SEX"/> <result property="empBirthday" column="EMP_BIRTHDAY"/> <result property="empAge" column="EMP_AGE"/> <result property="empMarriStatus" column="EMP_MARRI_STATUS"/> <result property="empNational" column="EMP_NATIONAL"/> <result property="politicalStatus" column="POLITICAL_STATUS"/> <result property="empEmail" column="EMP_EMAIL"/> <result property="empPhone" column="EMP_PHONE"/> <result property="idProvince" column="ID_PROVINCE"/> <result property="idCity" column="ID_CITY"/> <result property="idTown" column="ID_TOWN"/> <result property="empRegisType" column="EMP_REGIS_TYPE"/> <result property="fileProvince" column="FILE_PROVINCE"/> <result property="fileCity" column="FILE_CITY"/> <result property="fileTown" column="FILE_TOWN"/> <result property="isCollege" column="IS_COLLEGE"/> <result property="hignEducation" column="HIGN_EDUCATION"/> <result property="school" column="SCHOOL"/> <result property="major" column="MAJOR"/> <result property="admissionDate" column="ADMISSION_DATE"/> <result property="gradutionDate" column="GRADUTION_DATE"/> <result property="remark" column="REMARK"/> <result property="fileSource" column="FILE_SOURCE"/> <result property="status" column="STATUS"/> <result property="fileStatus" column="FILE_STATUS"/> <result property="projectNum" column="PROJECT_NUM"/> <result property="contractStatus" column="CONTRACT_STATUS"/> <result property="insuranceStatus" column="INSURANCE_STATUS"/> <result property="socialStatus" column="SOCIAL_STATUS"/> <result property="fundStatus" column="FUND_STATUS"/> <result property="salaryStatus" column="SALARY_STATUS"/> <result property="deleteFlag" column="DELETE_FLAG"/> <result property="createBy" column="CREATE_BY"/> <result property="createName" column="CREATE_NAME"/> <result property="createTime" column="CREATE_TIME"/> <result property="updateBy" column="UPDATE_BY"/> <result property="updateTime" column="UPDATE_TIME"/> <result property="leaveUser" column="LEAVE_USER"/> <result property="leaveUserName" column="LEAVE_USER_NAME"/> <result property="leaveTime" column="LEAVE_TIME"/> <result property="leaveReason" column="LEAVE_REASON"/> <result property="leaveRemark" column="LEAVE_REMARK"/> <result property="contactAddress" column="CONTACT_ADDRESS"/> <result property="firstWorkFlag" column="FIRST_WORK_FLAG"/> <result property="haveQualification" column="HAVE_QUALIFICATION"/> <result property="bankName" column="BANK_NAME"/> <result property="bankSubName" column="BANK_SUB_NAME"/> <result property="bankNo" column="BANK_NO"/> <result property="invoiceTitle" column="INVOICE_TITLE"/> <result property="bankProvince" column="BANK_PROVINCE"/> <result property="bankCity" column="BANK_CITY"/> <result property="taxMonth" column="TAX_MONTH"/> <result property="contactProvince" column="CONTACT_PROVINCE"/> <result property="contactCity" column="CONTACT_CITY"/> <result property="contactTown" column="CONTACT_TOWN"/> </resultMap> <resultMap id="tEmployeeExportMap" type="com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeExportVO"> <id property="id" column="ID"/> <result property="empCode" column="EMP_CODE"/> <result property="empNatrue" column="EMP_NATRUE"/> <result property="empName" column="EMP_NAME"/> <result property="empIdcard" column="EMP_IDCARD"/> <result property="empAge" column="EMP_AGE"/> <result property="validityStart" column="VALIDITY_START"/> <result property="validityEnd" column="VALIDITY_END"/> <result property="empMarriStatus" column="EMP_MARRI_STATUS"/> <result property="empNational" column="EMP_NATIONAL"/> <result property="politicalStatus" column="POLITICAL_STATUS"/> <result property="empPhone" column="EMP_PHONE"/> <result property="empEmail" column="EMP_EMAIL"/> <result property="idProvince" column="ID_PROVINCE"/> <result property="idCity" column="ID_CITY"/> <result property="idTown" column="ID_TOWN"/> <result property="empRegisType" column="EMP_REGIS_TYPE"/> <result property="fileProvince" column="FILE_PROVINCE"/> <result property="fileCity" column="FILE_CITY"/> <result property="fileTown" column="FILE_TOWN"/> <result property="isCollege" column="IS_COLLEGE"/> <result property="hignEducation" column="HIGN_EDUCATION"/> <result property="school" column="SCHOOL"/> <result property="major" column="MAJOR"/> <result property="admissionDate" column="ADMISSION_DATE"/> <result property="gradutionDate" column="GRADUTION_DATE"/> <result property="remark" column="REMARK"/> <result property="fileSource" column="FILE_SOURCE"/> <result property="isProjects" column="IS_PROJECTS"/> <result property="projectNum" column="PROJECT_NUM"/> <result property="deptName" column="DEPT_NAME"/> <result property="deptNo" column="DEPT_NO"/> <result property="contractStatus" column="CONTRACT_STATUS"/> <result property="insuranceStatus" column="INSURANCE_STATUS"/> <result property="socialStatus" column="SOCIAL_STATUS"/> <result property="fundStatus" column="FUND_STATUS"/> <result property="salaryStatus" column="SALARY_STATUS"/> <result property="createName" column="CREATE_NAME"/> <result property="createTime" column="CREATE_TIME"/> <result property="contactProvince" column="CONTACT_PROVINCE"/> <result property="contactCity" column="CONTACT_CITY"/> <result property="contactTown" column="CONTACT_TOWN"/> <result property="contactAddress" column="CONTACT_ADDRESS"/> <result property="unitName" column="UNIT_NAME"/> <result property="unitNo" column="UNIT_NO"/> <result property="leaveUserName" column="LEAVE_USER_NAME"/> <result property="leaveTime" column="LEAVE_TIME"/> <result property="leaveReason" column="LEAVE_REASON"/> <result property="leaveRemark" column="LEAVE_REMARK"/> <result property="status" column="STATUS"/> <result property="firstWorkFlag" column="FIRST_WORK_FLAG"/> <result property="haveQualification" column="HAVE_QUALIFICATION"/> </resultMap> <resultMap id="tEmployeeLeaveExportMap" type="com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeLeaveExportVO"> <result property="empCode" column="EMP_CODE"/> <result property="empNatrue" column="EMP_NATRUE"/> <result property="empName" column="EMP_NAME"/> <result property="empIdcard" column="EMP_IDCARD"/> <result property="empPhone" column="EMP_PHONE"/> <result property="fileProvince" column="FILE_PROVINCE"/> <result property="fileCity" column="FILE_CITY"/> <result property="fileTown" column="FILE_TOWN"/> <result property="deptName" column="DEPT_NAME"/> <result property="deptNo" column="DEPT_NO"/> <result property="unitName" column="UNIT_NAME"/> <result property="leaveUserName" column="LEAVE_USER_NAME"/> <result property="leaveTime" column="LEAVE_TIME"/> </resultMap> <resultMap id="dispatchEmpVoMap" type="com.yifu.cloud.plus.v1.yifu.archives.vo.DispatchEmpVo"> <id property="id" column="ID"/> <result property="empCode" column="EMP_CODE"/> <result property="empNatrue" column="EMP_NATRUE"/> <result property="empName" column="EMP_NAME"/> <result property="empIdcard" column="EMP_IDCARD"/> <result property="empNational" column="EMP_NATIONAL"/> <result property="empPhone" column="EMP_PHONE"/> <result property="idProvince" column="ID_PROVINCE"/> <result property="idCity" column="ID_CITY"/> <result property="idTown" column="ID_TOWN"/> <result property="empRegisType" column="EMP_REGIS_TYPE"/> <result property="fileProvince" column="FILE_PROVINCE"/> <result property="fileCity" column="FILE_CITY"/> <result property="fileTown" column="FILE_TOWN"/> <result property="hignEducation" column="HIGN_EDUCATION"/> <result property="fileStatus" column="FILE_STATUS"/> <result property="projectStatus" column="PROJECT_STATUS"/> <result property="contractName" column="CONTRACT_NAME"/> <result property="contractType" column="CONTRACT_TYPE"/> <result property="contractStart" column="CONTRACT_START"/> <result property="contractEnd" column="CONTRACT_END"/> <result property="contractTerm" column="CONTRACT_TERM"/> <result property="contractSubName" column="CONTRACT_SUB_NAME"/> <result property="contractId" column="CONTRACT_ID"/> <result property="unitName" column="UNIT_NAME"/> <result property="unitNo" column="UNIT_NO"/> <result property="deptId" column="DEPT_ID"/> <result property="deptName" column="DEPT_NAME"/> <result property="deptNo" column="DEPT_NO"/> <result property="post" column="POST"/> <result property="empNo" column="EMP_NO"/> </resultMap> <sql id="baseParam"> a.ID, a.EMP_CODE, a.EMP_NATRUE, a.EMP_NAME, a.EMP_IDCARD, a.VALIDITY_START, a.VALIDITY_END, a.EMP_SEX, a.EMP_BIRTHDAY, a.EMP_AGE, a.EMP_MARRI_STATUS, a.EMP_NATIONAL, a.POLITICAL_STATUS, a.EMP_EMAIL, a.EMP_PHONE, a.ID_PROVINCE, a.ID_CITY, a.ID_TOWN, a.EMP_REGIS_TYPE, a.FILE_PROVINCE, a.FILE_CITY, a.FILE_TOWN, a.IS_COLLEGE, a.HIGN_EDUCATION, a.SCHOOL, a.MAJOR, a.ADMISSION_DATE, a.GRADUTION_DATE, a.REMARK, a.FILE_SOURCE, a.STATUS, a.FILE_STATUS, a.PROJECT_NUM, a.CONTRACT_STATUS, a.INSURANCE_STATUS, a.SOCIAL_STATUS, a.FUND_STATUS, a.SALARY_STATUS, a.DELETE_FLAG, a.CREATE_BY, a.CREATE_NAME, a.CREATE_TIME, a.UPDATE_BY, a.UPDATE_TIME, a.LEAVE_USER, a.LEAVE_USER_NAME, a.LEAVE_TIME, a.LEAVE_REASON, a.LEAVE_REMARK, a.CONTACT_ADDRESS, a.FIRST_WORK_FLAG, a.HAVE_QUALIFICATION, a.BANK_NAME, a.BANK_SUB_NAME, a.BANK_NO, a.INVOICE_TITLE, a.BANK_PROVINCE, a.BANK_CITY, a.TAX_MONTH, a.CONTACT_PROVINCE, a.CONTACT_CITY, a.CONTACT_TOWN </sql> <sql id="Base_Export_List"> a.EMP_CODE, a.EMP_NATRUE, a.EMP_NAME, a.EMP_IDCARD, a.VALIDITY_START, a.VALIDITY_END, a.EMP_MARRI_STATUS, a.EMP_NATIONAL, a.POLITICAL_STATUS, a.EMP_PHONE, a.EMP_EMAIL, a.ID_PROVINCE, a.ID_CITY, a.ID_TOWN, a.EMP_REGIS_TYPE, a.FILE_PROVINCE, a.FILE_CITY, a.FILE_TOWN, a.IS_COLLEGE, a.HIGN_EDUCATION, a.SCHOOL, a.MAJOR, a.ADMISSION_DATE, a.GRADUTION_DATE, a.REMARK, a.FILE_SOURCE, a.PROJECT_NUM, a.CONTRACT_STATUS, a.INSURANCE_STATUS, a.SOCIAL_STATUS, a.FUND_STATUS, a.SALARY_STATUS, a.CREATE_NAME, a.CREATE_TIME, a.STATUS, a.CONTACT_ADDRESS </sql> <update id="updateEducationOfEmp"> update t_employee_info <trim prefix="set" suffixOverrides=","> <if test="education.isCollege != null">is_college=#{education.isCollege},</if> <if test="education.highIdentification != null">hign_education=#{education.highIdentification},</if> <if test="education.school != null">school=#{education.school},</if> <if test="education.major != null">major=#{education.major},</if> <if test="education.entryDate != null">admission_date=#{education.entryDate},</if> <if test="education.gradutionDate != null">gradution_date=#{education.gradutionDate},</if> </trim> WHERE id=#{education.empId} </update> <sql id="employeeInfo_where"> <if test="tEmployeeInfo != null"> <if test="tEmployeeInfo.idList != null"> AND a.id in <foreach item="idStr" index="index" collection="tEmployeeInfo.idList" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.idList == null"> <if test="tEmployeeInfo.id != null and tEmployeeInfo.id.trim() != ''"> AND a.ID = #{tEmployeeInfo.id} </if> <if test="tEmployeeInfo.empCode != null and tEmployeeInfo.empCode.trim() != ''"> AND a.EMP_CODE = #{tEmployeeInfo.empCode} </if> <if test="tEmployeeInfo.empNatrue != null and tEmployeeInfo.empNatrue.trim() != ''"> AND a.EMP_NATRUE = #{tEmployeeInfo.empNatrue} </if> <if test="tEmployeeInfo.empName != null and tEmployeeInfo.empName.trim() != ''"> AND a.EMP_NAME like concat('%',#{tEmployeeInfo.empName},'%') </if> <if test="tEmployeeInfo.empIdcard != null and tEmployeeInfo.empIdcard.trim() != ''"> AND a.EMP_IDCARD like concat('%',#{tEmployeeInfo.empIdcard},'%') </if> <if test="tEmployeeInfo.nameOrIdcard != null and tEmployeeInfo.nameOrIdcard.trim() != ''"> AND ( a.EMP_NAME like concat(#{tEmployeeInfo.nameOrIdcard},'%') or a.EMP_IDCARD like concat(#{tEmployeeInfo.nameOrIdcard},'%') ) </if> <if test="tEmployeeInfo.validityStart != null"> AND a.VALIDITY_START = #{tEmployeeInfo.validityStart} </if> <if test="tEmployeeInfo.validityEnd != null"> AND a.VALIDITY_END = #{tEmployeeInfo.validityEnd} </if> <if test="tEmployeeInfo.empSex != null and tEmployeeInfo.empSex.trim() != ''"> AND a.EMP_SEX = #{tEmployeeInfo.empSex} </if> <if test="tEmployeeInfo.empBirthday != null"> AND a.EMP_BIRTHDAY = #{tEmployeeInfo.empBirthday} </if> <if test="tEmployeeInfo.empAgeStart >0"> AND a.EMP_AGE >= #{tEmployeeInfo.empAgeStart} </if> <if test="tEmployeeInfo.empAgeEnd >0"> AND a.EMP_AGE <![CDATA[ <= ]]> #{tEmployeeInfo.empAgeEnd} </if> <if test="tEmployeeInfo.empMarriStatus != null and tEmployeeInfo.empMarriStatus.trim() != ''"> AND a.EMP_MARRI_STATUS = #{tEmployeeInfo.empMarriStatus} </if> <if test="tEmployeeInfo.empNational != null and tEmployeeInfo.empNational.trim() != ''"> AND a.EMP_NATIONAL = #{tEmployeeInfo.empNational} </if> <if test="tEmployeeInfo.politicalStatus != null and tEmployeeInfo.politicalStatus.trim() != ''"> AND a.POLITICAL_STATUS = #{tEmployeeInfo.politicalStatus} </if> <if test="tEmployeeInfo.empEmail != null and tEmployeeInfo.empEmail.trim() != ''"> AND a.EMP_EMAIL = #{tEmployeeInfo.empEmail} </if> <if test="tEmployeeInfo.empPhone != null and tEmployeeInfo.empPhone.trim() != ''"> AND a.EMP_PHONE = #{tEmployeeInfo.empPhone} </if> <if test="tEmployeeInfo.idProvince != null"> AND a.ID_PROVINCE = #{tEmployeeInfo.idProvince} </if> <if test="tEmployeeInfo.idCity != null"> AND a.ID_CITY = #{tEmployeeInfo.idCity} </if> <if test="tEmployeeInfo.idTown != null"> AND a.ID_TOWN = #{tEmployeeInfo.idTown} </if> <if test="tEmployeeInfo.empRegisType != null and tEmployeeInfo.empRegisType.trim() != ''"> AND a.EMP_REGIS_TYPE = #{tEmployeeInfo.empRegisType} </if> <if test="tEmployeeInfo.fileProvince != null"> AND a.FILE_PROVINCE = #{tEmployeeInfo.fileProvince} </if> <if test="tEmployeeInfo.fileCity != null"> AND a.FILE_CITY = #{tEmployeeInfo.fileCity} </if> <if test="tEmployeeInfo.fileTown != null"> AND a.FILE_TOWN = #{tEmployeeInfo.fileTown} </if> <if test="tEmployeeInfo.isCollege != null"> AND a.IS_COLLEGE = #{tEmployeeInfo.isCollege} </if> <if test="tEmployeeInfo.hignEducation != null and tEmployeeInfo.hignEducation.trim() != ''"> AND a.HIGN_EDUCATION = #{tEmployeeInfo.hignEducation} </if> <if test="tEmployeeInfo.school != null and tEmployeeInfo.school.trim() != ''"> AND a.SCHOOL = #{tEmployeeInfo.school} </if> <if test="tEmployeeInfo.major != null and tEmployeeInfo.major.trim() != ''"> AND a.MAJOR = #{tEmployeeInfo.major} </if> <if test="tEmployeeInfo.admissionDate != null"> AND a.ADMISSION_DATE = #{tEmployeeInfo.admissionDate} </if> <if test="tEmployeeInfo.gradutionDate != null"> AND a.GRADUTION_DATE = #{tEmployeeInfo.gradutionDate} </if> <if test="tEmployeeInfo.remark != null and tEmployeeInfo.remark.trim() != ''"> AND a.REMARK = #{tEmployeeInfo.remark} </if> <if test="tEmployeeInfo.fileSource != null and tEmployeeInfo.fileSource.trim() != ''"> AND a.FILE_SOURCE = #{tEmployeeInfo.fileSource} </if> <if test="tEmployeeInfo.status != null"> AND a.STATUS = #{tEmployeeInfo.status} </if> <if test="tEmployeeInfo.fileStatus != null"> AND a.FILE_STATUS = #{tEmployeeInfo.fileStatus} </if> <if test="tEmployeeInfo.projectNum != null"> <if test="tEmployeeInfo.projectNum == 1"> AND (a.PROJECT_NUM is null or a.PROJECT_NUM <![CDATA[ <= ]]> 1) </if> <if test="tEmployeeInfo.projectNum == 2"> AND a.PROJECT_NUM > 1 </if> </if> <if test="tEmployeeInfo.contractStatus != null"> AND a.CONTRACT_STATUS = #{tEmployeeInfo.contractStatus} </if> <if test="tEmployeeInfo.insuranceStatus != null"> AND a.INSURANCE_STATUS = #{tEmployeeInfo.insuranceStatus} </if> <if test="tEmployeeInfo.socialStatus != null"> AND a.SOCIAL_STATUS = #{tEmployeeInfo.socialStatus} </if> <if test="tEmployeeInfo.fundStatus != null"> AND a.FUND_STATUS = #(${tEmployeeInfo.fundStatus} </if> <if test="tEmployeeInfo.salaryStatus != null"> AND a.SALARY_STATUS = #{tEmployeeInfo.salaryStatus} </if> <if test="tEmployeeInfo.deleteFlag != null and tEmployeeInfo.deleteFlag.trim() != ''"> AND a.DELETE_FLAG = #{tEmployeeInfo.deleteFlag} </if> <if test="tEmployeeInfo.createBy != null and tEmployeeInfo.createBy.trim() != ''"> AND a.CREATE_BY = #{tEmployeeInfo.createBy} </if> <if test="tEmployeeInfo.createName != null and tEmployeeInfo.createName.trim() != ''"> AND a.CREATE_NAME = #{tEmployeeInfo.createName} </if> <if test="tEmployeeInfo.createTime != null"> AND a.CREATE_TIME = #{tEmployeeInfo.createTime} </if> <if test="tEmployeeInfo.updateBy != null and tEmployeeInfo.updateBy.trim() != ''"> AND a.UPDATE_BY = #{tEmployeeInfo.updateBy} </if> <if test="tEmployeeInfo.updateTime != null"> AND a.UPDATE_TIME = #{tEmployeeInfo.updateTime} </if> <if test="tEmployeeInfo.leaveUser != null and tEmployeeInfo.leaveUser.trim() != ''"> AND a.LEAVE_USER = #{tEmployeeInfo.leaveUser} </if> <if test="tEmployeeInfo.leaveUserName != null and tEmployeeInfo.leaveUserName.trim() != ''"> AND a.LEAVE_USER_NAME = #{tEmployeeInfo.leaveUserName} </if> <if test="tEmployeeInfo.leaveTime != null"> AND a.LEAVE_TIME = #{tEmployeeInfo.leaveTime} </if> <if test="tEmployeeInfo.leaveTimeStart != null"> AND a.LEAVE_TIME >= #{tEmployeeInfo.leaveTimeStart} </if> <if test="tEmployeeInfo.leaveTimeEnd != null"> AND a.LEAVE_TIME <![CDATA[ <= ]]> #{tEmployeeInfo.leaveTimeEnd} </if> <if test="tEmployeeInfo.leaveReason != null and tEmployeeInfo.leaveReason.trim() != ''"> AND a.LEAVE_REASON = #{tEmployeeInfo.leaveReason} </if> <if test="tEmployeeInfo.leaveRemark != null and tEmployeeInfo.leaveRemark.trim() != ''"> AND a.LEAVE_REMARK = #{tEmployeeInfo.leaveRemark} </if> <if test="tEmployeeInfo.contactAddress != null and tEmployeeInfo.contactAddress.trim() != ''"> AND a.CONTACT_ADDRESS = #{tEmployeeInfo.contactAddress} </if> <if test="tEmployeeInfo.empNatureArray != null and tEmployeeInfo.empNatureArray.length > 0"> AND a.EMP_NATRUE in <foreach item="idStr" index="index" collection="tEmployeeInfo.empNatureArray" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.contractStatusArray != null and tEmployeeInfo.contractStatusArray.length > 0"> AND a.CONTRACT_STATUS in <foreach item="idStr" index="index" collection="tEmployeeInfo.contractStatusArray" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.insuranceStatusArray != null and tEmployeeInfo.insuranceStatusArray.length > 0"> AND a.INSURANCE_STATUS in <foreach item="idStr" index="index" collection="tEmployeeInfo.insuranceStatusArray" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.socialStatusArray != null and tEmployeeInfo.socialStatusArray.length > 0"> AND a.SOCIAL_STATUS in <foreach item="idStr" index="index" collection="tEmployeeInfo.socialStatusArray" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.fundStatusArray != null and tEmployeeInfo.fundStatusArray.length > 0"> AND a.FUND_STATUS in <foreach item="idStr" index="index" collection="tEmployeeInfo.fundStatusArray" open="(" separator="," close=")"> #{idStr} </foreach> </if> <if test="tEmployeeInfo.createTimeStart != null"> AND a.CREATE_TIME <![CDATA[ >= ]]> #{tEmployeeInfo.createTimeStart} </if> <if test="tEmployeeInfo.createTimeEnd != null"> AND a.CREATE_TIME <![CDATA[ <= ]]> #{tEmployeeInfo.createTimeEnd} </if> </if> </if> </sql> <!-- hgw 分页查询 --> <select id="getPage" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a <!--<if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.contains('b.DEPT_ID') "> left join t_employee_project b on a.id=b.EMP_ID and b.DELETE_FLAG = '0' </if>--> where a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> order by a.CREATE_TIME desc </select> <!-- fxj 2024-08-23 身份证/姓名 下拉选择 查询 在职和离职数据 --> <select id="getPageAsso" resultMap="tEmployeeInfoMap"> select a.EMP_NAME, a.EMP_IDCARD from t_employee_info a where 1=1 <if test="tEmployeeInfo != null"> <if test="tEmployeeInfo.empName != null and tEmployeeInfo.empName.trim() != ''"> AND a.EMP_NAME like concat('%',#{tEmployeeInfo.empName},'%') </if> <if test="tEmployeeInfo.empIdcard != null and tEmployeeInfo.empIdcard.trim() != ''"> AND a.EMP_IDCARD like concat('%',#{tEmployeeInfo.empIdcard},'%') </if> </if> <if test="tEmployeeInfo.nameOrIdcard != null and tEmployeeInfo.nameOrIdcard.trim() != ''"> AND ( a.EMP_NAME like concat(#{tEmployeeInfo.nameOrIdcard},'%') or a.EMP_IDCARD like concat(#{tEmployeeInfo.nameOrIdcard},'%') ) </if> order by a.CREATE_TIME desc </select> <!-- hgw 分页查询 --> <select id="getLeavePage" resultMap="tEmployeeExportMap"> SELECT c.ID, c.EMP_CODE, c.EMP_NATRUE, c.EMP_NAME, c.EMP_IDCARD, c.EMP_PHONE, c.FILE_PROVINCE, c.FILE_CITY, c.FILE_TOWN, c.LEAVE_TIME, c.LEAVE_USER_NAME, c.CREATE_TIME, b.DEPT_ID, b.EMP_ID, b.UNIT_NAME, b.DEPT_NAME, b.DEPT_NO FROM ( SELECT a.ID, a.EMP_CODE, a.EMP_NATRUE, a.EMP_NAME, a.EMP_IDCARD, a.EMP_PHONE, a.FILE_PROVINCE, a.FILE_CITY, a.FILE_TOWN, a.LEAVE_TIME, a.LEAVE_USER_NAME, a.CREATE_TIME FROM t_employee_info a WHERE a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="null != page and null != size"> limit #{page},#{size} </if> ) c LEFT JOIN ( SELECT f.DEPT_ID, f.EMP_ID, GROUP_CONCAT(DISTINCT f.UNIT_NAME) UNIT_NAME, GROUP_CONCAT(DISTINCT f.DEPT_NAME) DEPT_NAME, GROUP_CONCAT(DISTINCT f.DEPT_NO) DEPT_NO FROM t_employee_project f WHERE f.DELETE_FLAG = '0' GROUP BY f.EMP_ID ) b ON c.id = b.EMP_ID where 1 = 1 <if test="tEmployeeInfo.unitName != null and tEmployeeInfo.unitName.trim() != ''"> AND b.UNIT_NAME like concat('%',#{tEmployeeInfo.unitName},'%') </if> <if test="tEmployeeInfo.deptName != null and tEmployeeInfo.deptName.trim() != ''"> AND b.DEPT_NAME like concat('%',#{tEmployeeInfo.deptName},'%') </if> <if test="tEmployeeInfo.deptNo != null and tEmployeeInfo.deptNo.trim() != ''"> AND b.DEPT_NO like concat('%',#{tEmployeeInfo.deptNo},'%') </if> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> ${tEmployeeInfo.authSql} </if> ORDER BY c.CREATE_TIME DESC </select> <!-- hgw 分页查询 --> <select id="getLeaveIPage" resultMap="tEmployeeExportMap"> SELECT c.ID, c.EMP_CODE, c.EMP_NATRUE, c.EMP_NAME, c.EMP_IDCARD, c.EMP_PHONE, c.FILE_PROVINCE, c.FILE_CITY, c.FILE_TOWN, c.LEAVE_TIME, c.LEAVE_USER_NAME, c.CREATE_TIME, b.DEPT_ID, b.EMP_ID, b.UNIT_NAME, b.DEPT_NAME, b.DEPT_NO FROM ( SELECT a.ID, a.EMP_CODE, a.EMP_NATRUE, a.EMP_NAME, a.EMP_IDCARD, a.EMP_PHONE, a.FILE_PROVINCE, a.FILE_CITY, a.FILE_TOWN, a.LEAVE_TIME, a.LEAVE_USER_NAME, a.CREATE_TIME FROM t_employee_info a WHERE a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> ) c LEFT JOIN ( SELECT f.DEPT_ID, f.EMP_ID, GROUP_CONCAT(DISTINCT f.UNIT_NAME) UNIT_NAME, GROUP_CONCAT(DISTINCT f.DEPT_NAME) DEPT_NAME, GROUP_CONCAT(DISTINCT f.DEPT_NO) DEPT_NO FROM t_employee_project f WHERE f.DELETE_FLAG = '0' GROUP BY f.EMP_ID ) b ON c.id = b.EMP_ID where 1 = 1 <if test="tEmployeeInfo.unitName != null and tEmployeeInfo.unitName.trim() != ''"> AND b.UNIT_NAME like concat('%',#{tEmployeeInfo.unitName},'%') </if> <if test="tEmployeeInfo.deptName != null and tEmployeeInfo.deptName.trim() != ''"> AND b.DEPT_NAME like concat('%',#{tEmployeeInfo.deptName},'%') </if> <if test="tEmployeeInfo.deptNo != null and tEmployeeInfo.deptNo.trim() != ''"> AND b.DEPT_NO like concat('%',#{tEmployeeInfo.deptNo},'%') </if> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> ${tEmployeeInfo.authSql} </if> ORDER BY c.CREATE_TIME DESC </select> <select id="getLeavePageCount" resultType="java.lang.Long"> SELECT count(1) FROM t_employee_info a where 1=1 and a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> </select> <!-- hgw list查询 --> <select id="getList" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a where a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> order by a.CREATE_TIME desc </select> <!-- hgw 根据身份证查询 --> <select id="getListByIdCard" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a where a.DELETE_FLAG = '0' and a.EMP_IDCARD in <foreach item="item" index="index" collection="idCardList" open="(" separator="," close=")"> #{item} </foreach> </select> <!-- hgw 根据身份证查询 --> <select id="getListByDeptId" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a left join t_employee_project b on a.EMP_IDCARD = b.EMP_IDCARD where a.DELETE_FLAG = '0' and b.DEPT_ID = #{deptId} GROUP BY a.EMP_IDCARD </select> <select id="getListByDeptIdByLimit" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a left join t_employee_project b on a.EMP_IDCARD = b.EMP_IDCARD where a.DELETE_FLAG = '0' and b.DEPT_ID = #{deptId} limit #{limit1},#{limit2} </select> <select id="getListByIdCardList" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a where a.DELETE_FLAG = '0' and a.EMP_IDCARD in <foreach item="item" index="index" collection="idCardList" open="(" separator="," close=")"> #{item} </foreach> </select> <!-- hgw 根据手机号查询 --> <select id="getListByPhone" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a where a.DELETE_FLAG = '0' and a.EMP_PHONE in <foreach item="item" index="index" collection="phoneList" open="(" separator="," close=")"> #{item} </foreach> </select> <update id="updateExcelEmployeeInfo" parameterType="java.util.List"> update t_employee_info <trim prefix="set" suffixOverrides=","> <trim prefix="EMP_NATRUE =case" suffix="end,"> <foreach collection="list" item="i" index="index"> <if test="i.empNatrue!=null"> when ID=#{i.id} then #{i.empNatrue} </if> </foreach> </trim> <trim prefix="EMP_NAME =case" suffix="end,"> <foreach collection="list" item="i" index="index"> <if test="i.empName!=null"> when ID=#{i.id} then #{i.empName} </if> </foreach> </trim> <trim prefix="EMP_IDCARD =case" suffix="end,"> <foreach collection="list" item="i" index="index"> <if test="i.empIdcard!=null"> when ID=#{i.id} then #{i.empIdcard} </if> </foreach> </trim> <trim prefix="FILE_STATUS =case" suffix="end,"> <foreach collection="list" item="i" index="index"> when ID=#{i.id} then 0 </foreach> </trim> <trim prefix="PROJECT_NUM =case" suffix="end,"> <foreach collection="list" item="i" index="index"> when ID=#{i.id} then #{i.projectNum} </foreach> </trim> <trim prefix="UPDATE_TIME =case" suffix="end,"> <foreach collection="list" item="i" index="index"> when ID=#{i.id} then now() </foreach> </trim> <trim prefix="UPDATE_BY =case" suffix="end,"> <foreach collection="list" item="i" index="index"> <if test="i.updateBy!=null"> when ID=#{i.id} then #{i.updateBy} </if> </foreach> </trim> </trim> where <foreach collection="list" separator="or" item="i" index="index"> ID=#{i.id} </foreach> </update> <!--tEmployeeInfo人员档案导出查询--> <select id="getTEmployeeExportList" resultMap="tEmployeeExportMap"> select <include refid="Base_Export_List"/>, p.IS_PROJECTS , p.DEPT_NAME, p.DEPT_NO, P.PROJECT_NUM from t_employee_info a LEFT JOIN view_project p on a.EMP_IDCARD=p.EMP_IDCARD <!--left join ( select b.EMP_ID, GROUP_CONCAT(DISTINCT b.DEPT_NAME) DEPT_NAME, GROUP_CONCAT(DISTINCT b.DEPT_NO) DEPT_NO from t_employee_project b where 1=1 and b.DELETE_FLAG = '0' <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> ${tEmployeeInfo.authSql} </if> ) b on a.id = b.EMP_ID--> <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> </where> order by a.CREATE_TIME desc </select> <!--tEmployeeInfo离职档案导出查询--> <select id="getTEmployeeLeaveExportList" resultMap="tEmployeeExportMap"> select * from ( SELECT <include refid="Base_Export_List"/> ,a.LEAVE_TIME ,a.LEAVE_USER ,a.LEAVE_USER_NAME ,a.LEAVE_REASON, p.IS_PROJECTS , p.DEPT_NAME, p.DEPT_NO,p.UNIT_NAME from t_employee_info a LEFT JOIN view_project_leave p on a.EMP_IDCARD=p.EMP_IDCARD <!--left join ( select b.EMP_ID, GROUP_CONCAT(DISTINCT b.DEPT_NAME) DEPT_NAME, GROUP_CONCAT(DISTINCT b.DEPT_NO) DEPT_NO, GROUP_CONCAT(DISTINCT b.unit_name) UNIT_NAME, GROUP_CONCAT(DISTINCT b.unit_no) UNIT_NO from t_employee_project b where 1=1 and b.DELETE_FLAG = '0' <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> ${tEmployeeInfo.authSql} </if> ) b on a.id = b.EMP_ID--> <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> </where> order by a.CREATE_TIME desc ) b where 1=1 <if test="tEmployeeInfo.unitName != null and tEmployeeInfo.unitName.trim() != ''"> AND b.UNIT_NAME like concat('%',#{tEmployeeInfo.unitName},'%') </if> <if test="tEmployeeInfo.deptName != null and tEmployeeInfo.deptName.trim() != ''"> AND b.DEPT_NAME like concat('%',#{tEmployeeInfo.deptName},'%') </if> <if test="tEmployeeInfo.deptNo != null and tEmployeeInfo.deptNo.trim() != ''"> AND b.DEPT_NO like concat('%',#{tEmployeeInfo.deptNo},'%') </if> </select> <!-- 获取当日最大的编码 --> <select id="getMaxEmpCode" resultType="java.lang.String"> SELECT ifnull(max(right (e.EMP_CODE, 5)), 0) EMP_CODE FROM t_employee_info e where e.DELETE_FLAG = '0' and e.CREATE_TIME > DATE_FORMAT(now(), '%Y-%m-%d') </select> <select id="getDispatchEmpVo" resultMap="dispatchEmpVoMap"> select a.ID,a.EMP_CODE,a.EMP_NAME, a.EMP_IDCARD,a.EMP_NATIONAL,a.EMP_PHONE,a.ID_PROVINCE,a.ID_CITY, a.ID_TOWN,a.EMP_REGIS_TYPE,a.FILE_PROVINCE,a.FILE_CITY,a.FILE_TOWN,a.HIGN_EDUCATION,a.FILE_STATUS,a.CONTACT_ADDRESS, b.CONTRACT_NAME,b.CONTRACT_TYPE, b.CONTRACT_START,b.CONTRACT_END,b.CONTRACT_TERM,b.CONTRACT_SUB_NAME,b.CONTRACT_ID, c.UNIT_NAME, c.UNIT_NO,c.DEPT_ID,c.DEPT_NAME,c.DEPT_NO,c.POST,c.EMP_NO,c.PROJECT_STATUS,c.EMP_NATRUE from ( select e.ID,e.EMP_CODE,e.EMP_NAME,e.EMP_IDCARD,e.EMP_NATIONAL,e.EMP_PHONE,e.ID_PROVINCE,e.ID_CITY, e.ID_TOWN,e.EMP_REGIS_TYPE,e.FILE_PROVINCE,e.FILE_CITY,e.FILE_TOWN,e.HIGN_EDUCATION,e.FILE_STATUS,e.CONTACT_ADDRESS from t_employee_info e where 1=1 and e.DELETE_FLAG = '0' <if test="checkVo != null"> <if test="checkVo.idCards != null"> AND e.EMP_IDCARD in <foreach item="idStr" index="index" collection="checkVo.idCards" open="(" separator="," close=")"> #{idStr} </foreach> </if> </if> ) a left join ( select p.UNIT_NAME,p.UNIT_NO,p.DEPT_ID,p.DEPT_NAME,p.DEPT_NO,p.POST,p.EMP_ID,p.EMP_NO,P.PROJECT_STATUS,p.EMP_NATRUE from t_employee_project p where 1=1 and p.DELETE_FLAG = '0' <if test="checkVo != null"> <if test="checkVo.codes != null"> AND p.DEPT_NO in <foreach item="code" index="index" collection="checkVo.codes" open="(" separator="," close=")"> #{code} </foreach> </if> </if> ) c on a.ID=c.EMP_ID left join ( <!-- 取值未删除,审核通过,使用中,未作废的合同数据,按项目分组,有数据即可不要求最新 --> SELECT x.SETTLE_DOMAIN, x.CONTRACT_NAME, x.CONTRACT_TYPE, x.CONTRACT_START, x.CONTRACT_END, x.CONTRACT_TERM, x.CONTRACT_SUB_NAME, x.ID as "CONTRACT_ID", x.EMP_IDCARD FROM t_employee_contract_info x WHERE x.DELETE_FLAG = '0' AND ( ( x.AUDIT_STATUS = '2' AND x.IN_USE = '0' ) OR ( x.AUDIT_STATUS = '1' AND x.IN_USE = '1' ) ) <if test="checkVo != null"> <if test="checkVo.idCards != null"> AND x.EMP_IDCARD in <foreach item="idStr" index="index" collection="checkVo.idCards" open="(" separator="," close=")"> #{idStr} </foreach> </if> </if> GROUP BY x.SETTLE_DOMAIN,x.EMP_IDCARD ) b on c.DEPT_ID= b.SETTLE_DOMAIN and b.EMP_IDCARD=a.EMP_IDCARD </select> <!--tEmployeeInfo人员档案导出查询改造 fxj 2022-11-02--> <select id="noPageDiy" resultMap="tEmployeeExportMap"> select a.EMP_CODE, a.EMP_NATRUE, a.EMP_NAME, a.EMP_IDCARD, a.EMP_AGE, a.VALIDITY_START, a.VALIDITY_END, a.EMP_MARRI_STATUS, a.EMP_NATIONAL, a.POLITICAL_STATUS, a.EMP_PHONE, a.EMP_EMAIL, a1.AREA_NAME as "ID_PROVINCE", a2.AREA_NAME as "ID_CITY", a3.AREA_NAME as "ID_TOWN", a.EMP_REGIS_TYPE, a4.AREA_NAME as "FILE_PROVINCE", a5.AREA_NAME as "FILE_CITY", a6.AREA_NAME as "FILE_TOWN", CASE WHEN a.IS_COLLEGE=0 THEN "否" WHEN a.IS_COLLEGE =1 THEN "是" ELSE a.IS_COLLEGE END as "IS_COLLEGE", a.HIGN_EDUCATION, a.SCHOOL, a.MAJOR, a.ADMISSION_DATE, a.GRADUTION_DATE, a.REMARK, CASE WHEN a.FILE_SOURCE=1 THEN "社保、公积金派单" WHEN a.FILE_SOURCE =2 THEN "人员发薪" WHEN a.FILE_SOURCE =3 THEN "商险派单" WHEN a.FILE_SOURCE =4 THEN "档案新建" WHEN a.FILE_SOURCE =5 THEN "批量导入" ELSE a.FILE_SOURCE END as "FILE_SOURCE", # 1=社保、公积金派单,2=人员发薪,3=商险派单,4=档案新建,5=批量导入 /*a.PROJECT_NUM,*/ a.CONTRACT_STATUS, a.INSURANCE_STATUS, a.SOCIAL_STATUS, a.FUND_STATUS, CASE WHEN a.SALARY_STATUS=0 THEN "无" WHEN a.SALARY_STATUS =1 THEN "是" WHEN a.SALARY_STATUS =2 THEN "否" ELSE a.SALARY_STATUS END as "SALARY_STATUS",# 0=无,1=是,2=否 a.CREATE_NAME, a.CREATE_TIME, CASE WHEN a.`STATUS`=0 THEN "草稿" WHEN a.`STATUS` =1 THEN "已审核" ELSE a.`STATUS` END as "STATUS", # 0=草稿,1=已审核 a7.AREA_NAME as "CONTACT_PROVINCE", a8.AREA_NAME as "CONTACT_CITY", a9.AREA_NAME as "CONTACT_TOWN", a.CONTACT_ADDRESS, p.IS_PROJECTS , p.DEPT_NAME, p.DEPT_NO, P.PROJECT_NUM from t_employee_info a LEFT JOIN sys_area a1 on a1.id=a.ID_PROVINCE LEFT JOIN sys_area a2 on a2.id=a.ID_CITY LEFT JOIN sys_area a3 on a3.id=a.ID_TOWN LEFT JOIN sys_area a4 on a4.id=a.FILE_PROVINCE LEFT JOIN sys_area a5 on a5.id=a.FILE_CITY LEFT JOIN sys_area a6 on a6.id=a.FILE_TOWN LEFT JOIN sys_area a7 on a7.id=a.CONTACT_PROVINCE LEFT JOIN sys_area a8 on a8.id=a.CONTACT_CITY LEFT JOIN sys_area a9 on a9.id=a.CONTACT_TOWN LEFT JOIN view_project p on a.EMP_IDCARD=p.EMP_IDCARD <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where_export"/> </where> order by a.CREATE_TIME desc <if test="tEmployeeInfo != null"> <if test="tEmployeeInfo.limitStart != null"> limit #{tEmployeeInfo.limitStart},#{tEmployeeInfo.limitEnd} </if> </if> </select> <!--tEmployeeInfo人员档案导出查询count fxj 2022-11-02--> <select id="noPageCountDiy" resultType="java.lang.Integer"> select count(1) from t_employee_info a <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where_export"/> </where> </select> <sql id="employeeInfo_where_export"> <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> </sql> <!--tEmployeeInfo离职档案导出查询--> <select id="noPageLeaveDiy" resultMap="tEmployeeLeaveExportMap"> SELECT a.EMP_CODE, CASE WHEN a.EMP_NATRUE='0' THEN "外包" WHEN a.EMP_NATRUE='1' THEN "派遣" WHEN a.EMP_NATRUE='2' THEN "代理" WHEN a.EMP_NATRUE='3' THEN "内部员工" ELSE "" END as "EMP_NATRUE", a.EMP_NAME, a.EMP_IDCARD, a.EMP_PHONE, a.EMP_EMAIL, a1.area_name as "FILE_PROVINCE", a2.area_name as "FILE_CITY", a3.area_name as "FILE_TOWN", a.LEAVE_TIME, a.LEAVE_USER_NAME, p.DEPT_NAME, p.DEPT_NO, p.UNIT_NAME from t_employee_info a LEFT JOIN view_project_leave p on a.EMP_IDCARD=p.EMP_IDCARD LEFT JOIN sys_area a1 on a1.id=a.FILE_PROVINCE LEFT JOIN sys_area a2 on a2.id=a.FILE_CITY LEFT JOIN sys_area a3 on a3.id=a.FILE_TOWN <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> <if test="tEmployeeInfo.unitName != null and tEmployeeInfo.unitName.trim() != ''"> AND p.UNIT_NAME like concat('%',#{tEmployeeInfo.unitName},'%') </if> <if test="tEmployeeInfo.deptName != null and tEmployeeInfo.deptName.trim() != ''"> AND p.DEPT_NAME like concat('%',#{tEmployeeInfo.deptName},'%') </if> <if test="tEmployeeInfo.deptNo != null and tEmployeeInfo.deptNo.trim() != ''"> AND p.DEPT_NO like concat('%',#{tEmployeeInfo.deptNo},'%') </if> </where> order by a.CREATE_TIME desc <if test="tEmployeeInfo != null"> <if test="tEmployeeInfo.limitStart != null"> limit #{tEmployeeInfo.limitStart},#{tEmployeeInfo.limitEnd} </if> </if> </select> <!--tEmployeeInfo离职档案导出查询--> <select id="noPageCountLeaveDiy" resultType="java.lang.Integer"> select count(1) from t_employee_info a LEFT JOIN view_project_leave p on a.EMP_IDCARD=p.EMP_IDCARD <where> a.DELETE_FLAG = '0' <include refid="employeeInfo_where"/> <if test="tEmployeeInfo.authSql != null and tEmployeeInfo.authSql.trim() != ''"> and a.id in ( select b.emp_id from t_employee_project b where b.DELETE_FLAG = '0' ${tEmployeeInfo.authSql} ) </if> <if test="tEmployeeInfo.unitName != null and tEmployeeInfo.unitName.trim() != ''"> AND p.UNIT_NAME like concat('%',#{tEmployeeInfo.unitName},'%') </if> <if test="tEmployeeInfo.deptName != null and tEmployeeInfo.deptName.trim() != ''"> AND p.DEPT_NAME like concat('%',#{tEmployeeInfo.deptName},'%') </if> <if test="tEmployeeInfo.deptNo != null and tEmployeeInfo.deptNo.trim() != ''"> AND p.DEPT_NO like concat('%',#{tEmployeeInfo.deptNo},'%') </if> </where> order by a.CREATE_TIME desc </select> <update id="updateSocialInfoById" > update t_employee_info a <trim prefix="set" suffixOverrides=","> <if test="tEmployeeInfo.id != null">a.id=a.id,</if> <if test="tEmployeeInfo.socialStatus != null">SOCIAL_STATUS=#{tEmployeeInfo.socialStatus},</if> <if test="tEmployeeInfo.fundStatus != null">FUND_STATUS=#{tEmployeeInfo.fundStatus},</if> <if test="tEmployeeInfo.hignEducation != null">HIGN_EDUCATION=#{tEmployeeInfo.hignEducation},</if> <if test="tEmployeeInfo.school != null">SCHOOL=#{tEmployeeInfo.school},</if> <if test="tEmployeeInfo.major != null">MAJOR=#{tEmployeeInfo.major},</if> <if test="tEmployeeInfo.gradutionDate != null">GRADUTION_DATE=#{tEmployeeInfo.gradutionDate},</if> <if test="tEmployeeInfo.contactAddress != null">CONTACT_ADDRESS=#{tEmployeeInfo.contactAddress},</if> <if test="tEmployeeInfo.isCollege != null">IS_COLLEGE=#{tEmployeeInfo.isCollege},</if> <if test="tEmployeeInfo.fileProvince != null">a.FILE_PROVINCE=#{tEmployeeInfo.fileProvince},</if> <if test="tEmployeeInfo.fileCity != null">a.FILE_CITY=#{tEmployeeInfo.fileCity},</if> <if test="tEmployeeInfo.fileCity != null"> <if test="tEmployeeInfo.fileTown != null">a.FILE_TOWN=#{tEmployeeInfo.fileTown},</if> <if test="tEmployeeInfo.fileTown == null">a.FILE_TOWN=null,</if> </if> <if test="tEmployeeInfo.empRegisType != null">a.EMP_REGIS_TYPE=#{tEmployeeInfo.empRegisType},</if> <if test="tEmployeeInfo.empPhone != null and tEmployeeInfo.empPhone != ''">a.EMP_PHONE=#{tEmployeeInfo.empPhone},</if> </trim> WHERE a.id=#{tEmployeeInfo.id} </update> <!-- 更新档案商险状态 --> <update id="updateEmployeeInfoInsuranceStatus" > update t_employee_info a set a.INSURANCE_STATUS = #{emp.status} where a.EMP_IDCARD = #{emp.idCard} </update> <!-- 更新档案薪资状态 --> <update id="updateEmployeeInfoSalaryStatus" > update t_employee_info a set a.SALARY_STATUS = #{emp.status} where a.EMP_IDCARD = #{emp.idCard} </update> <!-- 每月1号更新档案薪资状态为否薪资 --> <update id="everyMonthUpdateEmployeeInfoSalaryStatus" > update t_employee_info e set e.SALARY_STATUS = 2 where e.SALARY_STATUS = 1 and NOT EXISTS ( select 1 from view_salary_account_3month a where a.emp_idcard = e.EMP_IDCARD ) </update> <!-- 每天更新人员档案、项目档案的过期合同为2不在用 --> <update id="everyDayUpdateEmployeeInfoContractStatus" > update t_employee_info e left join t_employee_contract_info c on e.EMP_IDCARD=c.EMP_IDCARD and c.IN_USE='0' set e.CONTRACT_STATUS=2 where e.CONTRACT_STATUS != 2 and c.CONTRACT_END <![CDATA[ < ]]> DATE_FORMAT(curdate(),"%Y-%m-%d") and not EXISTS ( select 1 from t_employee_contract_info ec where ec.EMP_IDCARD=c.EMP_IDCARD and ec.IN_USE='0' and (ec.CONTRACT_END is null or ec.CONTRACT_END >= DATE_FORMAT(curdate(),"%Y-%m-%d")) ) </update> <update id="updateContractStatus" > update t_employee_info a set CONTRACT_STATUS = #{status} WHERE a.id=#{empId} </update> <!-- hgw 根据身份证查询-基础信息 --> <select id="getHcmArchiveBasicVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmArchiveBasicVo"> select a.EMP_NAME empName ,a.EMP_IDCARD empIdCard ,a.EMP_EMAIL email ,a.EMP_EMAIL email ,a.EMP_BIRTHDAY bornDate ,if(a.EMP_SEX='2','女',if(a.EMP_SEX='1','男','-')) sex ,education.label education ,registype.label residentType ,married.label maritalStatus ,nation.label nation ,concat(ifnull(p.AREA_NAME,''),ifnull(c.AREA_NAME,''),ifnull(t.AREA_NAME,'')) nativePlace ,politicalStatus.label political ,a.contact_Address contactAddress from t_employee_info a left join sys_area p on p.id=a.ID_PROVINCE left join sys_area c on c.id=a.ID_CITY left join sys_area t on t.id=a.ID_TOWN left join view_sys_dict_item nation on nation.value=a.EMP_NATIONAL and nation.type='emp_national' left join view_sys_dict_item education on education.value=a.HIGN_EDUCATION and education.type='education' left join view_sys_dict_item registype on registype.value=a.EMP_REGIS_TYPE and registype.type='emp_registype' left join view_sys_dict_item married on married.value=a.EMP_MARRI_STATUS and married.type='emp_married' left join view_sys_dict_item politicalStatus on politicalStatus.value=a.POLITICAL_STATUS and politicalStatus.type='emp_political' where a.DELETE_FLAG = '0' and a.EMP_IDCARD = #{idCard} limit 1 </select> <select id="getHcmArchiveJobVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmArchiveJobVo"> select a.WORK_UNIT companyName ,a.WORK_DEPART deptName ,a.WORK_JOB jobName ,a.START_DATE joinDate ,a.END_DATE leaveDate ,a.REMARK remark from t_emp_work_recording a where a.EMP_IDCARD = #{idCard} </select> <select id="getHcmArchiveEducationVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmArchiveEducationVo"> select a.SCHOOL schoolName ,a.MAJOR major ,education.label education ,a.ENTRY_DATE joinDate ,a.GRADUTION_DATE leaveDate ,educationType.label isFullTime ,'' annex from t_emp_education a left join view_sys_dict_item education on education.value=a.EDUCATION_NAME and education.type='education' left join view_sys_dict_item educationType on educationType.value=a.type and educationType.type='education_type' where a.EMP_IDCARD = #{idCard} </select> <select id="getHcmArchiveCertificateVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmArchiveCertificateVo"> select qualification.label certificateName ,a.CERTIFICATION_NO certificateNo ,a.ASSESSMENT_UNIT certificateOrg ,'' certificateDate ,'' certificateExpireDate ,'' annex from t_emp_professional_qualification a left join view_sys_dict_item qualification on qualification.value=a.QUALIFICATION_TYPE and qualification.type='qualification_type' where a.EMP_IDCARD = #{idCard} </select> <select id="getHcmArchiveFamilyVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmArchiveFamilyVo"> select relation.label relationName ,a.FAMILY_NAME trueName ,a.BIRTHDAY bornTime ,'' political ,a.WORK_UNIT company ,'' jobName from t_emp_family a left join view_sys_dict_item relation on relation.value=a.RELATIONSHIP_SELF and relation.type='family_relation' where a.EMP_IDCARD = #{idCard} </select> <select id="getHcmContractVo" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.HcmContractVo"> select a.CONTRACT_NAME contractType ,contractType.label termType ,'' contractDate ,a.CONTRACT_PARTY contractCompany ,a.CONTRACT_NO contractCode ,a.CONTRACT_START startDate ,a.CONTRACT_END endDate ,if(a.IN_USE='0','可用','不可用') contractStatus ,'' annexArray ,'' contractOwner from t_employee_contract_info a left join view_sys_dict_item contractType on contractType.value=a.CONTRACT_TYPE and contractType.type='employee_contract_type' where a.EMP_IDCARD = #{idCard} </select> <!-- hgw 根据身份证查询 --> <select id="getHcmEmpInfoList" resultMap="tEmployeeInfoMap"> select <include refid="baseParam"/> from t_employee_info a where a.DELETE_FLAG = '0' and a.EMP_IDCARD in <foreach item="item" index="index" collection="idCardList" open="(" separator="," close=")"> #{item} </foreach> </select> <!-- 员工年龄+1 定时任务方法 专用 --> <update id="updateEmployeeAgeTask"> update t_employee_info set EMP_AGE = YEAR(CURRENT_DATE())-YEAR(STR_TO_DATE(SUBSTRING(EMP_IDCARD,7,4),'%Y')) where EMP_IDCARD is not null and DELETE_FLAG='0' and SUBSTRING(EMP_IDCARD,7,1) in ('1','2') </update> </mapper>