diff --git a/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.java b/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.java index 077e96d70..b8598f68a 100644 --- a/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.java +++ b/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.java @@ -16,6 +16,8 @@ public interface HrmSnapshotMapper { */ List listAll(); + List snapshot(List employeeIds, Date snapshotTime); + /** * 条件查询 * @@ -87,4 +89,5 @@ public interface HrmSnapshotMapper { */ List currentEmpData(); + } \ No newline at end of file diff --git a/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.xml b/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.xml index 4ceb64c7a..b2cbfc262 100644 --- a/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.xml +++ b/src/com/engine/salary/mapper/hrm/HrmSnapshotMapper.xml @@ -58,7 +58,6 @@ - @@ -150,7 +149,14 @@ SELECT FROM hrsa_hrm_snapshot t - WHERE delete_type = 0 + + + + @@ -158,7 +164,7 @@ SELECT FROM hrsa_hrm_snapshot t - WHERE ID = #{id} AND delete_type = 0 + WHERE ID = #{id} @@ -166,7 +172,7 @@ SELECT FROM hrsa_hrm_snapshot t - WHERE delete_type = 0 + WHERE 1=1 AND ACCOUNTID1 = #{accountid1} @@ -790,445 +796,6 @@ - - - - INSERT INTO hrsa_hrm_snapshot - ( - ACCOUNTID1, - ACCOUNTNAME, - ACCOUNTTYPE, - ACCUMFUNDACCOUNT, - ASSISTANTID, - BANKID1, - BELONGTO, - BEMEMBERDATE, - BEPARTYDATE, - BIRTHDAY, - BIRTHPLACE, - CERTIFICATENUM, - companystartdate, - companyworkyear, - COSTCENTERID, - COUNTRYID, - DEGREE, - DEPARTMENTID, - DEPARTMENTNAME, - EDUCATIONLEVEL, - EMAIL, - employee_id, - ENDDATE, - EXTPHONE, - FAX, - FOLK, - HEALTHINFO, - HOMEADDRESS, - ID, - ISLABOUUNION, - JOBACTIVITYDESC, - JOBCALL, - JOBLEVEL, - JOBTITLE, - JOBTITLENAME, - LASTLOGINDATE, - LASTNAME, - LOCATIONID, - loginid, - MANAGERID, - MANAGERSTR, - MARITALSTATUS, - MOBILE, - MOBILECALL, - NATIONALITY, - NATIVEPLACE, - POLICY, - PROBATIONENDDATE, - REGRESIDENTPLACE, - RESIDENTPHONE, - RESIDENTPLACE, - RESIDENTPOSTCODE, - RESOURCETYPE, - SECLEVEL, - SEX, - snapshot_time, - STARTDATE, - STATUS, - SUBCOMPANYID1, - SUBCOMPANYNAME, - TELEPHONE, - TEMPRESIDENTNUMBER, - USEKIND, - WORKCODE, - WORKROOM, - workstartdate, - workyear, - ) - VALUES - - - ( - #{item.accountid1}, - #{item.accountname}, - #{item.accounttype}, - #{item.accumfundaccount}, - #{item.assistantid}, - #{item.bankid1}, - #{item.belongto}, - #{item.bememberdate}, - #{item.bepartydate}, - #{item.birthday}, - #{item.birthplace}, - #{item.certificatenum}, - #{item.companystartdate}, - #{item.companyworkyear}, - #{item.costcenterid}, - #{item.countryid}, - #{item.degree}, - #{item.departmentid}, - #{item.departmentname}, - #{item.educationlevel}, - #{item.email}, - #{item.employeeId}, - #{item.enddate}, - #{item.extphone}, - #{item.fax}, - #{item.folk}, - #{item.healthinfo}, - #{item.homeaddress}, - #{item.id}, - #{item.islabouunion}, - #{item.jobactivitydesc}, - #{item.jobcall}, - #{item.joblevel}, - #{item.jobtitle}, - #{item.jobtitlename}, - #{item.lastlogindate}, - #{item.lastname}, - #{item.locationid}, - #{item.loginid}, - #{item.managerid}, - #{item.managerstr}, - #{item.maritalstatus}, - #{item.mobile}, - #{item.mobilecall}, - #{item.nationality}, - #{item.nativeplace}, - #{item.policy}, - #{item.probationenddate}, - #{item.regresidentplace}, - #{item.residentphone}, - #{item.residentplace}, - #{item.residentpostcode}, - #{item.resourcetype}, - #{item.seclevel}, - #{item.sex}, - #{item.snapshotTime}, - #{item.startdate}, - #{item.status}, - #{item.subcompanyid1}, - #{item.subcompanyname}, - #{item.telephone}, - #{item.tempresidentnumber}, - #{item.usekind}, - #{item.workcode}, - #{item.workroom}, - #{item.workstartdate}, - #{item.workyear}, - ) - - - - - - - INSERT INTO hrsa_hrm_snapshot ( - ACCOUNTID1, - ACCOUNTNAME, - ACCOUNTTYPE, - ACCUMFUNDACCOUNT, - ASSISTANTID, - BANKID1, - BELONGTO, - BEMEMBERDATE, - BEPARTYDATE, - BIRTHDAY, - BIRTHPLACE, - CERTIFICATENUM, - companystartdate, - companyworkyear, - COSTCENTERID, - COUNTRYID, - DEGREE, - DEPARTMENTID, - DEPARTMENTNAME, - EDUCATIONLEVEL, - EMAIL, - employee_id, - ENDDATE, - EXTPHONE, - FAX, - FOLK, - HEALTHINFO, - HOMEADDRESS, - ID, - ISLABOUUNION, - JOBACTIVITYDESC, - JOBCALL, - JOBLEVEL, - JOBTITLE, - JOBTITLENAME, - LASTLOGINDATE, - LASTNAME, - LOCATIONID, - loginid, - MANAGERID, - MANAGERSTR, - MARITALSTATUS, - MOBILE, - MOBILECALL, - NATIONALITY, - NATIVEPLACE, - POLICY, - PROBATIONENDDATE, - REGRESIDENTPLACE, - RESIDENTPHONE, - RESIDENTPLACE, - RESIDENTPOSTCODE, - RESOURCETYPE, - SECLEVEL, - SEX, - snapshot_time, - STARTDATE, - STATUS, - SUBCOMPANYID1, - SUBCOMPANYNAME, - TELEPHONE, - TEMPRESIDENTNUMBER, - USEKIND, - WORKCODE, - WORKROOM, - workstartdate, - workyear, - ) - - - select - #{item.accountid1,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.accountname,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.accounttype,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.accumfundaccount,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.assistantid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.bankid1,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.belongto,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.bememberdate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.bepartydate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.birthday,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.birthplace,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.certificatenum,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.companystartdate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.companyworkyear,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.costcenterid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.countryid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.degree,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.departmentid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.departmentname,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.educationlevel,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.email,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.employeeId,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.enddate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.extphone,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.fax,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.folk,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.healthinfo,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.homeaddress,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.id,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.islabouunion,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.jobactivitydesc,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.jobcall,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.joblevel,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.jobtitle,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.jobtitlename,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.lastlogindate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.lastname,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.locationid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.loginid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.managerid,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.managerstr,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.maritalstatus,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.mobile,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.mobilecall,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.nationality,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.nativeplace,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.policy,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.probationenddate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.regresidentplace,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.residentphone,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.residentplace,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.residentpostcode,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.resourcetype,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.seclevel,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.sex,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.snapshotTime,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.startdate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.status,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.subcompanyid1,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.subcompanyname,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.telephone,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.tempresidentnumber,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.usekind,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.workcode,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.workroom,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.workstartdate,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - #{item.workyear,jdbcType=DOUBLE、DATE、VARCHAR、INTEGER}, - from dual - - - - - - - INSERT INTO hrsa_hrm_snapshot ( - ACCOUNTID1, - ACCOUNTNAME, - ACCOUNTTYPE, - ACCUMFUNDACCOUNT, - ASSISTANTID, - BANKID1, - BELONGTO, - BEMEMBERDATE, - BEPARTYDATE, - BIRTHDAY, - BIRTHPLACE, - CERTIFICATENUM, - companystartdate, - companyworkyear, - COSTCENTERID, - COUNTRYID, - DEGREE, - DEPARTMENTID, - DEPARTMENTNAME, - EDUCATIONLEVEL, - EMAIL, - employee_id, - ENDDATE, - EXTPHONE, - FAX, - FOLK, - HEALTHINFO, - HOMEADDRESS, - ID, - ISLABOUUNION, - JOBACTIVITYDESC, - JOBCALL, - JOBLEVEL, - JOBTITLE, - JOBTITLENAME, - LASTLOGINDATE, - LASTNAME, - LOCATIONID, - loginid, - MANAGERID, - MANAGERSTR, - MARITALSTATUS, - MOBILE, - MOBILECALL, - NATIONALITY, - NATIVEPLACE, - POLICY, - PROBATIONENDDATE, - REGRESIDENTPLACE, - RESIDENTPHONE, - RESIDENTPLACE, - RESIDENTPOSTCODE, - RESOURCETYPE, - SECLEVEL, - SEX, - snapshot_time, - STARTDATE, - STATUS, - SUBCOMPANYID1, - SUBCOMPANYNAME, - TELEPHONE, - TEMPRESIDENTNUMBER, - USEKIND, - WORKCODE, - WORKROOM, - workstartdate, - workyear, - ) - VALUES - ( - #{item.accountid1}, - #{item.accountname}, - #{item.accounttype}, - #{item.accumfundaccount}, - #{item.assistantid}, - #{item.bankid1}, - #{item.belongto}, - #{item.bememberdate}, - #{item.bepartydate}, - #{item.birthday}, - #{item.birthplace}, - #{item.certificatenum}, - #{item.companystartdate}, - #{item.companyworkyear}, - #{item.costcenterid}, - #{item.countryid}, - #{item.degree}, - #{item.departmentid}, - #{item.departmentname}, - #{item.educationlevel}, - #{item.email}, - #{item.employeeId}, - #{item.enddate}, - #{item.extphone}, - #{item.fax}, - #{item.folk}, - #{item.healthinfo}, - #{item.homeaddress}, - #{item.id}, - #{item.islabouunion}, - #{item.jobactivitydesc}, - #{item.jobcall}, - #{item.joblevel}, - #{item.jobtitle}, - #{item.jobtitlename}, - #{item.lastlogindate}, - #{item.lastname}, - #{item.locationid}, - #{item.loginid}, - #{item.managerid}, - #{item.managerstr}, - #{item.maritalstatus}, - #{item.mobile}, - #{item.mobilecall}, - #{item.nationality}, - #{item.nativeplace}, - #{item.policy}, - #{item.probationenddate}, - #{item.regresidentplace}, - #{item.residentphone}, - #{item.residentplace}, - #{item.residentpostcode}, - #{item.resourcetype}, - #{item.seclevel}, - #{item.sex}, - #{item.snapshotTime}, - #{item.startdate}, - #{item.status}, - #{item.subcompanyid1}, - #{item.subcompanyname}, - #{item.telephone}, - #{item.tempresidentnumber}, - #{item.usekind}, - #{item.workcode}, - #{item.workroom}, - #{item.workstartdate}, - #{item.workyear}, - ) - - - UPDATE hrsa_hrm_snapshot @@ -1300,7 +867,7 @@ workstartdate=#{workstartdate}, workyear=#{workyear}, - WHERE ID = #{id} AND delete_type = 0 + WHERE ID = #{id} @@ -1507,7 +1074,7 @@ workyear=#{workyear}, - WHERE ID = #{id} AND delete_type = 0 + WHERE ID = #{id} @@ -1522,8 +1089,7 @@ UPDATE hrsa_hrm_snapshot SET delete_type = 1 - WHERE delete_type = 0 - AND id IN + WHERE id IN #{id} diff --git a/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java b/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java index 6d6637dc5..42b555cdb 100644 --- a/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java @@ -15,6 +15,7 @@ import com.engine.salary.entity.hrm.SubCompanyInfo; import com.engine.salary.entity.hrm.dto.EmployeeInfoExpandDTO; import com.engine.salary.entity.hrm.dto.FieldSetting; import com.engine.salary.entity.hrm.po.ExpandFieldSettingsPO; +import com.engine.salary.entity.hrm.po.HrmSnapshotPO; import com.engine.salary.entity.salarysob.bo.SalarySobRangeBO; import com.engine.salary.entity.salarysob.param.SalarySobRangeEmpQueryParam; import com.engine.salary.entity.salarysob.po.SalarySobRangePO; @@ -23,6 +24,7 @@ import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum; import com.engine.salary.enums.salarysob.TargetTypeEnum; import com.engine.salary.mapper.datacollection.EmployMapper; import com.engine.salary.mapper.hrm.ExpandFieldSettingsMapper; +import com.engine.salary.mapper.hrm.HrmSnapshotMapper; import com.engine.salary.service.ExtEmpService; import com.engine.salary.service.SalaryEmployeeService; import com.engine.salary.service.SalarySobExtRangeService; @@ -33,6 +35,7 @@ import com.engine.salary.sys.service.impl.SalarySysConfServiceImpl; import com.engine.salary.util.SalaryEntityUtil; import com.engine.salary.util.SalaryI18nUtil; import com.engine.salary.util.db.IdGenerator; +import com.engine.salary.util.db.MapperProxyFactory; import com.google.common.collect.Lists; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; @@ -60,6 +63,10 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee private EmployBiz employBiz = new EmployBiz(); + private HrmSnapshotMapper getHrmSnapshotMapper() { + return MapperProxyFactory.getProxy(HrmSnapshotMapper.class); + } + private EmployMapper getEmployMapper() { return SqlProxyHandle.getProxy(EmployMapper.class); } @@ -612,4 +619,8 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee } return SalaryI18nUtil.i18n(getEmployMapper().getJobCallInfoById(jobCallId)); } + + public List snapshot(List employeeIds, Date snapshotTime) { + return getHrmSnapshotMapper().snapshot(employeeIds, snapshotTime); + } }