diff --git a/resource/sqlupgrade/DM/sql202501150103.sql b/resource/sqlupgrade/DM/sql202501150103.sql new file mode 100644 index 000000000..c8b71336f --- /dev/null +++ b/resource/sqlupgrade/DM/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID NUMBER(38,0) primary key NOT NULL, +snapshot_time date, +employee_id NUMBER(38,0), +loginid varchar2(100), +LASTNAME varchar2(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar2(60), +MOBILE varchar2(60) , +MOBILECALL varchar2(60) , +EMAIL varchar2(60), +LOCATIONID int(0), +WORKROOM varchar2(60), +HOMEADDRESS varchar2(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar2(200) , +JOBACTIVITYDESC varchar2(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar2(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar2(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar2(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar2(60) , +NATIVEPLACE varchar2(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar2(60) , +REGRESIDENTPLACE varchar2(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar2(200) , +POLICY varchar2(30) , +DEGREE varchar2(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar2(200) , +ACCUMFUNDACCOUNT varchar2(30), +BIRTHPLACE varchar2(60) , +FOLK varchar2(30) , +RESIDENTPHONE varchar2(60) , +RESIDENTPOSTCODE varchar2(60) , +EXTPHONE varchar2(50) , +MANAGERSTR varchar2(500), +STATUS int(0) , +FAX varchar2(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar2(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar2(200) , +companystartdate varchar2(10), +workstartdate varchar2(10) , +companyworkyear number , +workyear number +); +/ + diff --git a/resource/sqlupgrade/GS/sql202501150103.sql b/resource/sqlupgrade/GS/sql202501150103.sql new file mode 100644 index 000000000..c8b71336f --- /dev/null +++ b/resource/sqlupgrade/GS/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID NUMBER(38,0) primary key NOT NULL, +snapshot_time date, +employee_id NUMBER(38,0), +loginid varchar2(100), +LASTNAME varchar2(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar2(60), +MOBILE varchar2(60) , +MOBILECALL varchar2(60) , +EMAIL varchar2(60), +LOCATIONID int(0), +WORKROOM varchar2(60), +HOMEADDRESS varchar2(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar2(200) , +JOBACTIVITYDESC varchar2(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar2(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar2(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar2(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar2(60) , +NATIVEPLACE varchar2(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar2(60) , +REGRESIDENTPLACE varchar2(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar2(200) , +POLICY varchar2(30) , +DEGREE varchar2(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar2(200) , +ACCUMFUNDACCOUNT varchar2(30), +BIRTHPLACE varchar2(60) , +FOLK varchar2(30) , +RESIDENTPHONE varchar2(60) , +RESIDENTPOSTCODE varchar2(60) , +EXTPHONE varchar2(50) , +MANAGERSTR varchar2(500), +STATUS int(0) , +FAX varchar2(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar2(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar2(200) , +companystartdate varchar2(10), +workstartdate varchar2(10) , +companyworkyear number , +workyear number +); +/ + diff --git a/resource/sqlupgrade/JC/sql202501150103.sql b/resource/sqlupgrade/JC/sql202501150103.sql new file mode 100644 index 000000000..c8b71336f --- /dev/null +++ b/resource/sqlupgrade/JC/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID NUMBER(38,0) primary key NOT NULL, +snapshot_time date, +employee_id NUMBER(38,0), +loginid varchar2(100), +LASTNAME varchar2(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar2(60), +MOBILE varchar2(60) , +MOBILECALL varchar2(60) , +EMAIL varchar2(60), +LOCATIONID int(0), +WORKROOM varchar2(60), +HOMEADDRESS varchar2(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar2(200) , +JOBACTIVITYDESC varchar2(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar2(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar2(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar2(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar2(60) , +NATIVEPLACE varchar2(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar2(60) , +REGRESIDENTPLACE varchar2(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar2(200) , +POLICY varchar2(30) , +DEGREE varchar2(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar2(200) , +ACCUMFUNDACCOUNT varchar2(30), +BIRTHPLACE varchar2(60) , +FOLK varchar2(30) , +RESIDENTPHONE varchar2(60) , +RESIDENTPOSTCODE varchar2(60) , +EXTPHONE varchar2(50) , +MANAGERSTR varchar2(500), +STATUS int(0) , +FAX varchar2(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar2(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar2(200) , +companystartdate varchar2(10), +workstartdate varchar2(10) , +companyworkyear number , +workyear number +); +/ + diff --git a/resource/sqlupgrade/Mysql/sql202501150103.sql b/resource/sqlupgrade/Mysql/sql202501150103.sql new file mode 100644 index 000000000..2bff4f801 --- /dev/null +++ b/resource/sqlupgrade/Mysql/sql202501150103.sql @@ -0,0 +1,71 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID bigint(0) NOT NULL, +snapshot_time datetime(0), +employee_id bigint(0), +loginid varchar(100), +LASTNAME varchar(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar(60), +MOBILE varchar(60) , +MOBILECALL varchar(60) , +EMAIL varchar(60), +LOCATIONID int(0), +WORKROOM varchar(60), +HOMEADDRESS varchar(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar(200) , +JOBACTIVITYDESC varchar(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar(60) , +NATIVEPLACE varchar(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar(60) , +REGRESIDENTPLACE varchar(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar(200) , +POLICY varchar(30) , +DEGREE varchar(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar(200) , +ACCUMFUNDACCOUNT varchar(30), +BIRTHPLACE varchar(60) , +FOLK varchar(30) , +RESIDENTPHONE varchar(60) , +RESIDENTPOSTCODE varchar(60) , +EXTPHONE varchar(50) , +MANAGERSTR varchar(500), +STATUS int(0) , +FAX varchar(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar(200) , +companystartdate varchar(10), +workstartdate varchar(10) , +companyworkyear decimal(10, 2) , +workyear decimal(10, 2) , +PRIMARY KEY (ID) USING BTREE +) ; \ No newline at end of file diff --git a/resource/sqlupgrade/Oracle/sql202501150103.sql b/resource/sqlupgrade/Oracle/sql202501150103.sql new file mode 100644 index 000000000..7817d23d0 --- /dev/null +++ b/resource/sqlupgrade/Oracle/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID NUMBER(38,0) primary key NOT NULL, +snapshot_time date, +employee_id NUMBER(38,0), +loginid varchar2(100), +LASTNAME varchar2(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar2(60), +MOBILE varchar2(60) , +MOBILECALL varchar2(60) , +EMAIL varchar2(60), +LOCATIONID int(0), +WORKROOM varchar2(60), +HOMEADDRESS varchar2(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar2(200) , +JOBACTIVITYDESC varchar2(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar2(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar2(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar2(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar2(60) , +NATIVEPLACE varchar2(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar2(60) , +REGRESIDENTPLACE varchar2(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar2(200) , +POLICY varchar2(30) , +DEGREE varchar2(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar2(200) , +ACCUMFUNDACCOUNT varchar2(30), +BIRTHPLACE varchar2(60) , +FOLK varchar2(30) , +RESIDENTPHONE varchar2(60) , +RESIDENTPOSTCODE varchar2(60) , +EXTPHONE varchar2(50) , +MANAGERSTR varchar2(500), +STATUS int(0) , +FAX varchar2(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar2(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar2(200) , +companystartdate varchar2(10), +workstartdate varchar2(10) , +companyworkyear number , +workyear number +) + +/ \ No newline at end of file diff --git a/resource/sqlupgrade/PG/sql202501150103.sql b/resource/sqlupgrade/PG/sql202501150103.sql new file mode 100644 index 000000000..d62aea72f --- /dev/null +++ b/resource/sqlupgrade/PG/sql202501150103.sql @@ -0,0 +1,71 @@ +CREATE TABLE hrsa_hrm_snapshot ( + ID bigint(0) NOT NULL, + snapshot_time timestamp, + employee_id bigint(0), + loginid varchar(100), + LASTNAME varchar(60), + SEX char(1), + BIRTHDAY char(10) , + NATIONALITY int(0) , + MARITALSTATUS char(1) , + TELEPHONE varchar(60), + MOBILE varchar(60) , + MOBILECALL varchar(60) , + EMAIL varchar(60), + LOCATIONID int(0), + WORKROOM varchar(60), + HOMEADDRESS varchar(100), + RESOURCETYPE char(1) , + STARTDATE char(10) , + ENDDATE char(10), + JOBTITLE int(0) , + JOBTITLENAME varchar(200) , + JOBACTIVITYDESC varchar(200), + JOBLEVEL int(0) , + SECLEVEL int(0) , + DEPARTMENTID int(0) , + DEPARTMENTNAME varchar(200) , + SUBCOMPANYID1 int(0) , + SUBCOMPANYNAME varchar(200) , + COSTCENTERID int(0) , + MANAGERID int(0) , + ASSISTANTID int(0), + BANKID1 int(0) , + ACCOUNTID1 varchar(100) , + LASTLOGINDATE char(10) , + CERTIFICATENUM varchar(60) , + NATIVEPLACE varchar(100) , + EDUCATIONLEVEL int(0) , + BEMEMBERDATE char(10) , + BEPARTYDATE char(10) , + WORKCODE varchar(60) , + REGRESIDENTPLACE varchar(200) , + HEALTHINFO char(1) , + RESIDENTPLACE varchar(200) , + POLICY varchar(30) , + DEGREE varchar(30) , + USEKIND int(0) , + JOBCALL int(0) , + jobcallname varchar(200) , + ACCUMFUNDACCOUNT varchar(30), + BIRTHPLACE varchar(60) , + FOLK varchar(30) , + RESIDENTPHONE varchar(60) , + RESIDENTPOSTCODE varchar(60) , + EXTPHONE varchar(50) , + MANAGERSTR varchar(500), + STATUS int(0) , + FAX varchar(60) , + ISLABOUUNION char(1), + TEMPRESIDENTNUMBER varchar(60), + PROBATIONENDDATE char(10), + COUNTRYID int(0) , + ACCOUNTTYPE int(0) , + BELONGTO int(0) , + ACCOUNTNAME varchar(200) , + companystartdate varchar(10), + workstartdate varchar(10) , + companyworkyear decimal(10, 2) , + workyear decimal(10, 2) , + PRIMARY KEY (ID) +) ; \ No newline at end of file diff --git a/resource/sqlupgrade/SQLServer/sql202501150103.sql b/resource/sqlupgrade/SQLServer/sql202501150103.sql new file mode 100644 index 000000000..e500a3b90 --- /dev/null +++ b/resource/sqlupgrade/SQLServer/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( + ID bigint NOT NULL, + snapshot_time datetime, + employee_id bigint, + loginid varchar(100), + LASTNAME varchar(60), + SEX char(1), + BIRTHDAY char(10) , + NATIONALITY int , + MARITALSTATUS char(1) , + TELEPHONE varchar(60), + MOBILE varchar(60) , + MOBILECALL varchar(60) , + EMAIL varchar(60), + LOCATIONID int, + WORKROOM varchar(60), + HOMEADDRESS varchar(100), + RESOURCETYPE char(1) , + STARTDATE char(10) , + ENDDATE char(10), + JOBTITLE int , + JOBTITLENAME varchar(200) , + JOBACTIVITYDESC varchar(200), + JOBLEVEL int , + SECLEVEL int , + DEPARTMENTID int , + DEPARTMENTNAME varchar(200) , + SUBCOMPANYID1 int , + SUBCOMPANYNAME varchar(200) , + COSTCENTERID int , + MANAGERID int , + ASSISTANTID int, + BANKID1 int , + ACCOUNTID1 varchar(100) , + LASTLOGINDATE char(10) , + CERTIFICATENUM varchar(60) , + NATIVEPLACE varchar(100) , + EDUCATIONLEVEL int , + BEMEMBERDATE char(10) , + BEPARTYDATE char(10) , + WORKCODE varchar(60) , + REGRESIDENTPLACE varchar(200) , + HEALTHINFO char(1) , + RESIDENTPLACE varchar(200) , + POLICY varchar(30) , + DEGREE varchar(30) , + USEKIND int , + JOBCALL int , + jobcallname varchar(200) , + ACCUMFUNDACCOUNT varchar(30), + BIRTHPLACE varchar(60) , + FOLK varchar(30) , + RESIDENTPHONE varchar(60) , + RESIDENTPOSTCODE varchar(60) , + EXTPHONE varchar(50) , + MANAGERSTR varchar(500), + STATUS int , + FAX varchar(60) , + ISLABOUUNION char(1), + TEMPRESIDENTNUMBER varchar(60), + PROBATIONENDDATE char(10), + COUNTRYID int , + ACCOUNTTYPE int , + BELONGTO int , + ACCOUNTNAME varchar(200) , + companystartdate varchar(10), + workstartdate varchar(10) , + companyworkyear decimal(10, 2) , + workyear decimal(10, 2), + PRIMARY KEY (id) +) +GO \ No newline at end of file diff --git a/resource/sqlupgrade/ST/sql202501150103.sql b/resource/sqlupgrade/ST/sql202501150103.sql new file mode 100644 index 000000000..c8b71336f --- /dev/null +++ b/resource/sqlupgrade/ST/sql202501150103.sql @@ -0,0 +1,72 @@ +CREATE TABLE hrsa_hrm_snapshot ( +ID NUMBER(38,0) primary key NOT NULL, +snapshot_time date, +employee_id NUMBER(38,0), +loginid varchar2(100), +LASTNAME varchar2(60), +SEX char(1), +BIRTHDAY char(10) , +NATIONALITY int(0) , +MARITALSTATUS char(1) , +TELEPHONE varchar2(60), +MOBILE varchar2(60) , +MOBILECALL varchar2(60) , +EMAIL varchar2(60), +LOCATIONID int(0), +WORKROOM varchar2(60), +HOMEADDRESS varchar2(100), +RESOURCETYPE char(1) , +STARTDATE char(10) , +ENDDATE char(10), +JOBTITLE int(0) , +JOBTITLENAME varchar2(200) , +JOBACTIVITYDESC varchar2(200), +JOBLEVEL int(0) , +SECLEVEL int(0) , +DEPARTMENTID int(0) , +DEPARTMENTNAME varchar2(200) , +SUBCOMPANYID1 int(0) , +SUBCOMPANYNAME varchar2(200) , +COSTCENTERID int(0) , +MANAGERID int(0) , +ASSISTANTID int(0), +BANKID1 int(0) , +ACCOUNTID1 varchar2(100) , +LASTLOGINDATE char(10) , +CERTIFICATENUM varchar2(60) , +NATIVEPLACE varchar2(100) , +EDUCATIONLEVEL int(0) , +BEMEMBERDATE char(10) , +BEPARTYDATE char(10) , +WORKCODE varchar2(60) , +REGRESIDENTPLACE varchar2(200) , +HEALTHINFO char(1) , +RESIDENTPLACE varchar2(200) , +POLICY varchar2(30) , +DEGREE varchar2(30) , +USEKIND int(0) , +JOBCALL int(0) , +jobcallname varchar2(200) , +ACCUMFUNDACCOUNT varchar2(30), +BIRTHPLACE varchar2(60) , +FOLK varchar2(30) , +RESIDENTPHONE varchar2(60) , +RESIDENTPOSTCODE varchar2(60) , +EXTPHONE varchar2(50) , +MANAGERSTR varchar2(500), +STATUS int(0) , +FAX varchar2(60) , +ISLABOUUNION char(1), +TEMPRESIDENTNUMBER varchar2(60), +PROBATIONENDDATE char(10), +COUNTRYID int(0) , +ACCOUNTTYPE int(0) , +BELONGTO int(0) , +ACCOUNTNAME varchar2(200) , +companystartdate varchar2(10), +workstartdate varchar2(10) , +companyworkyear number , +workyear number +); +/ + diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml index 833128372..17229b2e9 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml @@ -117,7 +117,7 @@ LEFT JOIN hrmdepartment d ON d.id = e.departmentid LEFT JOIN hrmsubcompany c ON c.id = e.subcompanyid1 WHERE t.delete_type = 0 - and t.employee_type is null + and (t.employee_type is null or t.employee_type = 0) and e.status not in (7) @@ -221,7 +221,7 @@ LEFT JOIN hrmdepartment d ON d.id = e.departmentid LEFT JOIN hrmsubcompany c ON c.id = e.subcompanyid1 WHERE t.delete_type = 0 - and t.employee_type is null + and (t.employee_type is null or t.employee_type = 0) and e.status not in (7) @@ -322,7 +322,7 @@ LEFT JOIN hrmdepartment d ON d.id = e.departmentid LEFT JOIN hrmsubcompany c ON c.id = e.subcompanyid1 WHERE t.delete_type = 0 - and t.employee_type is null + and (t.employee_type is null or t.employee_type = 0) and e.status not in (7) diff --git a/src/com/engine/salary/service/AddUpDeductionService.java b/src/com/engine/salary/service/AddUpDeductionService.java index 0bf72af18..b41c5700c 100644 --- a/src/com/engine/salary/service/AddUpDeductionService.java +++ b/src/com/engine/salary/service/AddUpDeductionService.java @@ -100,14 +100,6 @@ public interface AddUpDeductionService { */ List getAddUpDeductionList(YearMonth declareMonth, List employeeIds, Long taxAgentId); - /** - * 根据年月获取已核算数据 - * - * @param yearMonth - * @return - */ - List getAccountedEmployeeData(String yearMonth); - List getAccountedEmployeeDataByTaxYearMonth(String yearMonth); /** diff --git a/src/com/engine/salary/service/SalaryEmployeeService.java b/src/com/engine/salary/service/SalaryEmployeeService.java index d82366a41..ba8284e74 100644 --- a/src/com/engine/salary/service/SalaryEmployeeService.java +++ b/src/com/engine/salary/service/SalaryEmployeeService.java @@ -42,9 +42,10 @@ public interface SalaryEmployeeService { * 根据薪资账套id查询人员 * * @param salarySobId 薪资账套id + * @param hasExtEmp 是否含非系统人员 * @return */ - List listBySalarySobId(Long salarySobId); + List listBySalarySobId(Long salarySobId, boolean hasExtEmp); /** * 获取人员信息 diff --git a/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java b/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java index 1f8efff29..ca998e4b7 100644 --- a/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java @@ -13,7 +13,6 @@ import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; import com.engine.hrmelog.entity.dto.LoggerContext; import com.engine.salary.biz.AddUpDeductionBiz; -import com.engine.salary.common.LocalDateRange; import com.engine.salary.config.SalaryElogConfig; import com.engine.salary.constant.SzyhApiConstant; import com.engine.salary.encrypt.EncryptUtil; @@ -35,6 +34,7 @@ import com.engine.salary.entity.extemp.po.ExtEmpPO; import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO; import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO; +import com.engine.salary.entity.salarysob.po.SalarySobPO; import com.engine.salary.entity.taxagent.bo.TaxAgentBO; import com.engine.salary.entity.taxagent.dto.TaxAgentEmployeeDTO; import com.engine.salary.entity.taxagent.dto.TaxAgentManageRangeEmployeeDTO; @@ -50,6 +50,7 @@ import com.engine.salary.enums.datacollection.EnumAddUpDeductionRequestStatus; import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum; import com.engine.salary.enums.employeedeclare.DeclareStatusEnum; import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum; +import com.engine.salary.enums.salarysob.IncomeCategoryEnum; import com.engine.salary.enums.salaryarchive.SalaryArchiveStatusEnum; import com.engine.salary.enums.sicategory.DeleteTypeEnum; import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum; @@ -177,6 +178,10 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction return ServiceUtil.getService(ExtEmpServiceImpl.class, user); } + private SalarySobService getSalarySobService(User user) { + return ServiceUtil.getService(SalarySobServiceImpl.class, user); + } + @Override public Map getSearchCondition(Map params) { Map apidatas = new HashMap(); @@ -249,7 +254,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction List employees = getSalaryEmployeeService(user).listEmployee(); // 已经核算过的不可操作 // 获取已经核算的数据 - List salaryAcctEmployees = getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 查询已有数据 Date declareMonth = SalaryDateUtil.localDateToDate(LocalDate.parse(declareMonthStr + "-01", SalaryDateUtil.DATE_FORMATTER)); List list = getAddUpDeductionMapper().listSome(AddUpDeduction.builder().declareMonth(declareMonth).build()); @@ -520,7 +525,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction // 已经核算过的不可操作 // 获取已经核算的数据 - List salaryAcctEmployees = getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 判断是否有核算过 if (CollectionUtils.isNotEmpty(salaryAcctEmployees)) { Optional optionalAcctEmp = salaryAcctEmployees.stream().filter(f -> f.getEmployeeId().equals(addUpDeduction.getEmployeeId()) && f.getTaxAgentId().equals(addUpDeduction.getTaxAgentId())).findFirst(); @@ -568,7 +573,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction List employees = getSalaryEmployeeService(user).listEmployee(); // 已经核算过的不可操作 // 获取已经核算的数据 - List salaryAcctEmployees = getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 查询已有数据 Date declareMonth = SalaryDateUtil.localDateToDate(LocalDate.parse(declareMonthStr + "-01", SalaryDateUtil.DATE_FORMATTER)); List list = getAddUpDeductionMapper().listSome(AddUpDeduction.builder().declareMonth(declareMonth).build()); @@ -834,8 +839,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction List updateList = new ArrayList<>(); List insertList = new ArrayList<>(); List errorMessages = new ArrayList<>(); - List accountedEmployeeData = - getAccountedEmployeeData(DateUtil.format(yearMonth, "yyyy-MM")); + List accountedEmployeeData = getAccountedEmployeeDataByTaxYearMonth(DateUtil.format(yearMonth, "yyyy-MM")); for (TaxAgentPO taxAgent : taxAgents) { List employeePOs = getSpecialAddDeductionService(user) .getSpecialAddDeductionPOByEmployee(null, taxAgent.getId()); @@ -1154,12 +1158,12 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction cellList.add(Util.null2String(dto.getDepartmentName())); cellList.add(Util.null2String(dto.getJobNum())); cellList.add(NumberUtil.isNumber(dto.getAddUpChildEducation()) ? new BigDecimal(dto.getAddUpChildEducation()) : Util.null2String(dto.getAddUpChildEducation())); - cellList.add(NumberUtil.isNumber(dto.getAddUpContinuingEducation()) ? new BigDecimal(dto.getAddUpContinuingEducation()) :Util.null2String(dto.getAddUpContinuingEducation())); - cellList.add(NumberUtil.isNumber(dto.getAddUpHousingLoanInterest()) ? new BigDecimal(dto.getAddUpHousingLoanInterest()) :Util.null2String(dto.getAddUpHousingLoanInterest())); - cellList.add(NumberUtil.isNumber(dto.getAddUpHousingRent()) ? new BigDecimal(dto.getAddUpHousingRent()) :Util.null2String(dto.getAddUpHousingRent())); - cellList.add(NumberUtil.isNumber(dto.getAddUpSupportElderly()) ? new BigDecimal(dto.getAddUpSupportElderly()) :Util.null2String(dto.getAddUpSupportElderly())); - cellList.add(NumberUtil.isNumber(dto.getAddUpIllnessMedical()) ? new BigDecimal(dto.getAddUpIllnessMedical()) :Util.null2String(dto.getAddUpIllnessMedical())); - cellList.add(NumberUtil.isNumber(dto.getAddUpInfantCare()) ? new BigDecimal(dto.getAddUpInfantCare()) :Util.null2String(dto.getAddUpInfantCare())); + cellList.add(NumberUtil.isNumber(dto.getAddUpContinuingEducation()) ? new BigDecimal(dto.getAddUpContinuingEducation()) : Util.null2String(dto.getAddUpContinuingEducation())); + cellList.add(NumberUtil.isNumber(dto.getAddUpHousingLoanInterest()) ? new BigDecimal(dto.getAddUpHousingLoanInterest()) : Util.null2String(dto.getAddUpHousingLoanInterest())); + cellList.add(NumberUtil.isNumber(dto.getAddUpHousingRent()) ? new BigDecimal(dto.getAddUpHousingRent()) : Util.null2String(dto.getAddUpHousingRent())); + cellList.add(NumberUtil.isNumber(dto.getAddUpSupportElderly()) ? new BigDecimal(dto.getAddUpSupportElderly()) : Util.null2String(dto.getAddUpSupportElderly())); + cellList.add(NumberUtil.isNumber(dto.getAddUpIllnessMedical()) ? new BigDecimal(dto.getAddUpIllnessMedical()) : Util.null2String(dto.getAddUpIllnessMedical())); + cellList.add(NumberUtil.isNumber(dto.getAddUpInfantCare()) ? new BigDecimal(dto.getAddUpInfantCare()) : Util.null2String(dto.getAddUpInfantCare())); return cellList; }).collect(Collectors.toList())) @@ -1304,12 +1308,12 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction cellList.add(Util.null2String(dto.getIdNo())); cellList.add(Util.null2String(dto.getHiredate())); cellList.add(NumberUtil.isNumber(dto.getAddUpChildEducation()) ? new BigDecimal(dto.getAddUpChildEducation()) : Util.null2String(dto.getAddUpChildEducation())); - cellList.add(NumberUtil.isNumber(dto.getAddUpContinuingEducation()) ? new BigDecimal(dto.getAddUpContinuingEducation()) :Util.null2String(dto.getAddUpContinuingEducation())); - cellList.add(NumberUtil.isNumber(dto.getAddUpHousingLoanInterest()) ? new BigDecimal(dto.getAddUpHousingLoanInterest()) :Util.null2String(dto.getAddUpHousingLoanInterest())); - cellList.add(NumberUtil.isNumber(dto.getAddUpHousingRent()) ? new BigDecimal(dto.getAddUpHousingRent()) :Util.null2String(dto.getAddUpHousingRent())); - cellList.add(NumberUtil.isNumber(dto.getAddUpSupportElderly()) ? new BigDecimal(dto.getAddUpSupportElderly()) :Util.null2String(dto.getAddUpSupportElderly())); - cellList.add(NumberUtil.isNumber(dto.getAddUpIllnessMedical()) ? new BigDecimal(dto.getAddUpIllnessMedical()) :Util.null2String(dto.getAddUpIllnessMedical())); - cellList.add(NumberUtil.isNumber(dto.getAddUpInfantCare()) ? new BigDecimal(dto.getAddUpInfantCare()) :Util.null2String(dto.getAddUpInfantCare())); + cellList.add(NumberUtil.isNumber(dto.getAddUpContinuingEducation()) ? new BigDecimal(dto.getAddUpContinuingEducation()) : Util.null2String(dto.getAddUpContinuingEducation())); + cellList.add(NumberUtil.isNumber(dto.getAddUpHousingLoanInterest()) ? new BigDecimal(dto.getAddUpHousingLoanInterest()) : Util.null2String(dto.getAddUpHousingLoanInterest())); + cellList.add(NumberUtil.isNumber(dto.getAddUpHousingRent()) ? new BigDecimal(dto.getAddUpHousingRent()) : Util.null2String(dto.getAddUpHousingRent())); + cellList.add(NumberUtil.isNumber(dto.getAddUpSupportElderly()) ? new BigDecimal(dto.getAddUpSupportElderly()) : Util.null2String(dto.getAddUpSupportElderly())); + cellList.add(NumberUtil.isNumber(dto.getAddUpIllnessMedical()) ? new BigDecimal(dto.getAddUpIllnessMedical()) : Util.null2String(dto.getAddUpIllnessMedical())); + cellList.add(NumberUtil.isNumber(dto.getAddUpInfantCare()) ? new BigDecimal(dto.getAddUpInfantCare()) : Util.null2String(dto.getAddUpInfantCare())); return cellList; }).collect(Collectors.toList())) .orElse(Collections.emptyList()); @@ -1317,45 +1321,24 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction } - /** - * 根据年月获取已核算数据 - * - * @param yearMonth - * @return - */ - @Override - public List getAccountedEmployeeData(String yearMonth) { - List list = Lists.newArrayList(); - LocalDate salaryMonthDate = LocalDate.parse(yearMonth + "-01", SalaryDateUtil.DATE_FORMATTER); - List salaryAcctRecords = getSalaryAcctRecordService(user).listBySalaryMonth(LocalDateRange.builder().fromDate(SalaryDateUtil.localDateToDate(salaryMonthDate)).endDate(SalaryDateUtil.localDateToDate(salaryMonthDate)).build()); - salaryAcctRecords.forEach(e -> { - boolean isAccounted = e.getStatus() > SalaryAcctRecordStatusEnum.NOT_ARCHIVED.getValue(); - if (isAccounted) { -// list.addAll(getSalaryAcctEmployeeService(user).listBySalaryAcctRecordIds(Collections.singleton(salaryAcctRecords.get(0).getId()))); - list.addAll(getSalaryAcctEmployeeService(user).listBySalaryAcctRecordIds(Collections.singleton(e.getId()))); - } - }); - - return list; - } - @Override public List getAccountedEmployeeDataByTaxYearMonth(String yearMonth) { List list = Lists.newArrayList(); YearMonth month = YearMonth.parse(yearMonth); - LocalDate salaryMonthDate = month.atDay(1); - LocalDate salaryMonthEndDate = month.atEndOfMonth(); - List salaryAcctRecords = getSalaryAcctRecordService(user).listByTaxCycle( - LocalDateRange.builder().fromDate(SalaryDateUtil.localDateToDate(salaryMonthDate)) - .endDate(SalaryDateUtil.localDateToDate(salaryMonthEndDate)).build(), - null); - salaryAcctRecords.forEach(e -> { - boolean isAccounted = e.getStatus() > SalaryAcctRecordStatusEnum.NOT_ARCHIVED.getValue(); - if (isAccounted) { -// list.addAll(getSalaryAcctEmployeeService(user).listBySalaryAcctRecordIds(Collections.singleton(salaryAcctRecords.get(0).getId()))); - list.addAll(getSalaryAcctEmployeeService(user).listBySalaryAcctRecordIds(Collections.singleton(e.getId()))); - } - }); + Date taxCycle = SalaryDateUtil.localDateToDate(month.atDay(1)); + + List salaryAcctRecords = getSalaryAcctRecordService(user).listSome(SalaryAcctRecordPO.builder().taxCycle(taxCycle).build()); + List salarySobPOS = getSalarySobService(user).listAll(); + List sobIds = salarySobPOS.stream() + .filter(e -> IncomeCategoryEnum.WAGES_AND_SALARIES.getValue().equals(e.getIncomeCategory())) + .map(SalarySobPO::getId) + .collect(Collectors.toList()); + salaryAcctRecords.stream() + .filter(e -> !SalaryAcctRecordStatusEnum.NOT_ARCHIVED.getValue().equals(e.getStatus())) + .filter(e -> sobIds.contains(e.getSalarySobId())) + .forEach(e -> { + list.addAll(getSalaryAcctEmployeeService(user).listBySalaryAcctRecordIds(Collections.singleton(e.getId()))); + }); return list; } diff --git a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java index 000369315..c0ba99713 100644 --- a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java @@ -976,7 +976,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation List employees = getSalaryEmployeeService(user).listEmployee(); // 已经核算过的不可操作 // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(taxYearMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(taxYearMonthStr); //税款所属期 Date taxYearMonth = SalaryDateUtil.localDateToDate(LocalDate.parse(taxYearMonthStr + "-01", SalaryDateUtil.DATE_FORMATTER)); // 查询已有数据 @@ -1111,7 +1111,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation LocalDate salaryMonthDate = LocalDate.parse(declareMonthStr + "-01", SalaryDateUtil.DATE_FORMATTER); salaryMonthDate = salaryMonthDate.plusMonths(1); String format = salaryMonthDate.atStartOfDay().format(DateTimeFormatter.ofPattern("yyyy-MM")); - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(format); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(format); // 判断是否有核算过 List deletePOList = new ArrayList<>(); List deleteList = new ArrayList<>(); @@ -1189,7 +1189,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation LocalDate salaryMonthDate = LocalDate.parse(declareMonthStr + "-01", SalaryDateUtil.DATE_FORMATTER); String format = salaryMonthDate.plusMonths(1).atStartOfDay().format(DateTimeFormatter.ofPattern("yyyy-MM")); // 获取已经核算的数据 - List employees = getAddUpDeductionService(user).getAccountedEmployeeData(format); + List employees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(format); for (AddUpSituation item : list) { if (CollectionUtils.isNotEmpty(employees)) { Optional optionalAcctEmp = employees.stream().filter(f -> f.getEmployeeId().equals(item.getEmployeeId()) && f.getTaxAgentId().equals(item.getTaxAgentId())).findFirst(); diff --git a/src/com/engine/salary/service/impl/AttendQuoteDataServiceImpl.java b/src/com/engine/salary/service/impl/AttendQuoteDataServiceImpl.java index 48648cc57..ee7e00713 100644 --- a/src/com/engine/salary/service/impl/AttendQuoteDataServiceImpl.java +++ b/src/com/engine/salary/service/impl/AttendQuoteDataServiceImpl.java @@ -371,7 +371,7 @@ public class AttendQuoteDataServiceImpl extends Service implements AttendQuoteDa SalarySobPO salarySobPO = getSalarySobService(user).getById(salarySobId); // 根据薪资账套查询人员 - List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salarySobId); + List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salarySobId,false); if (CollectionUtils.isEmpty(salaryEmployees)) { errorMsg = errorMsg + "【" + salarySobPO.getName() + "】薪资账套没有人员; "; } else { diff --git a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java index 8d838f3ed..14870f3c7 100644 --- a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java +++ b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java @@ -253,7 +253,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction //税款所属期 Date declareMonth = SalaryDateUtil.stringToDate(declareMonthStr + "-01"); // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 查询已有数据 List list = getOtherDeductionMapper().listSome(OtherDeductionPO.builder().declareMonth(declareMonth).build()); @@ -1848,7 +1848,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction throw new SalaryRunTimeException("该个税扣缴义务人无权限编辑此数据!"); } // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 判断是否有核算过 if (CollectionUtils.isNotEmpty(salaryAcctEmployees)) { Optional optionalAcctEmp = salaryAcctEmployees.stream().filter(f -> f.getEmployeeId().equals(otherDeductionParam.getEmployeeId()) && f.getTaxAgentId().equals(otherDeductionParam.getTaxAgentId())).findFirst(); @@ -1905,7 +1905,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction //税款所属期 Date declareMonth = SalaryDateUtil.stringToDate(declareMonthStr + "-01"); // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 查询已有数据 List list = getOtherDeductionMapper().listSome(OtherDeductionPO.builder().declareMonth(declareMonth).build()); //合规数据 @@ -1987,7 +1987,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction List deleteIds = deleteParam.getIds(); // 已经核算过的不可操作 // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); // 判断是否有核算过 List deleteList = new ArrayList<>(); List resultList = new ArrayList<>(); @@ -2061,7 +2061,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction // 获取所有想要删除的数据 List list = otherDeductionBiz.listSome(queryParam); // 获取已经核算的数据 - List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeData(declareMonthStr); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(declareMonthStr); for (OtherDeductionPO item : list) { if (CollectionUtils.isNotEmpty(salaryAcctEmployees)) { Optional optionalAcctEmp = salaryAcctEmployees.stream().filter(f -> f.getEmployeeId().equals(item.getEmployeeId()) && f.getTaxAgentId().equals(item.getTaxAgentId())).findFirst(); @@ -2113,9 +2113,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction @Override public String extendToLastMonth(OtherDeductionExtendLastParam param) { //查询已经核算的数据 - List salaryAcctEmployees = - getAddUpDeductionService(user) - .getAccountedEmployeeData(param.getDeclareMonth()); + List salaryAcctEmployees = getAddUpDeductionService(user).getAccountedEmployeeDataByTaxYearMonth(param.getDeclareMonth()); Map> acctInfoMap = salaryAcctEmployees.stream() .distinct().collect(Collectors.groupingBy( i -> i.getTaxAgentId() + "" + i.getEmployeeId())); diff --git a/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java index 7c05fdc41..54822e860 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctEmployeeServiceImpl.java @@ -570,7 +570,7 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct @Override public void initBySalaryAcctRecord(SalaryAcctRecordPO salaryAcctRecordPO) { // 根据薪资账套查询人员 - List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()); + List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId(), true); if (CollectionUtils.isEmpty(salaryEmployees)) { return; } @@ -616,7 +616,7 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct } // 根据薪资账套查询人员 - List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()); + List salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId(), true); if (CollectionUtils.isEmpty(salaryEmployees)) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "未查询到账套下关联人员")); } diff --git a/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java b/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java index db5da75ba..9e2bc85af 100644 --- a/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryEmployeeServiceImpl.java @@ -140,7 +140,7 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee } @Override - public List listBySalarySobId(Long salarySobId) { + public List listBySalarySobId(Long salarySobId, boolean hasExtEmp) { List includeSalaryEmployees = new ArrayList<>(); @@ -173,13 +173,15 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee } //外部人员 - List salarySobExtRangePOS = getSalarySobExtRangeService(user).listBySalarySobId(salarySobId); - if (CollectionUtils.isNotEmpty(salarySobExtRangePOS)) { - List ids = SalaryEntityUtil.properties(salarySobExtRangePOS, SalarySobExtRangePO::getTargetId, Collectors.toList()); - List extEmps = getExtEmpService(user).getEmployeeByIds(ids); - extEmps = extEmps.stream().distinct().collect(Collectors.toList()); + if(hasExtEmp){ + List salarySobExtRangePOS = getSalarySobExtRangeService(user).listBySalarySobId(salarySobId); + if (CollectionUtils.isNotEmpty(salarySobExtRangePOS)) { + List ids = SalaryEntityUtil.properties(salarySobExtRangePOS, SalarySobExtRangePO::getTargetId, Collectors.toList()); + List extEmps = getExtEmpService(user).getEmployeeByIds(ids); + extEmps = extEmps.stream().distinct().collect(Collectors.toList()); - includeSalaryEmployees.addAll(extEmps); + includeSalaryEmployees.addAll(extEmps); + } } if (!openSecondaryAccount) { @@ -660,11 +662,11 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee .departmentName(hrmSnapshotPO.getDepartmentname()) .departmentId(hrmSnapshotPO.getDepartmentid() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getDepartmentid()))) .subcompanyName(hrmSnapshotPO.getSubcompanyname()) - .subcompanyid(hrmSnapshotPO.getSubcompanyid1() == null ? null :NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getSubcompanyid1()))) - .costcenterId(hrmSnapshotPO.getCostcenterid() == null ? null :NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getCostcenterid()))) - .locationId(hrmSnapshotPO.getLocationid() == null ? null :NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getLocationid()))) + .subcompanyid(hrmSnapshotPO.getSubcompanyid1() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getSubcompanyid1()))) + .costcenterId(hrmSnapshotPO.getCostcenterid() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getCostcenterid()))) + .locationId(hrmSnapshotPO.getLocationid() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getLocationid()))) .jobtitleName(hrmSnapshotPO.getJobtitlename()) - .jobtitleId(hrmSnapshotPO.getJobtitle() == null ? null :NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getJobtitle()))) + .jobtitleId(hrmSnapshotPO.getJobtitle() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getJobtitle()))) .companystartdate(hrmSnapshotPO.getCompanystartdate()) .mobile(hrmSnapshotPO.getMobile()) // .dismissdate() @@ -675,7 +677,7 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee .email(hrmSnapshotPO.getEmail()) .telephone(hrmSnapshotPO.getTelephone()) .jobcall(hrmSnapshotPO.getJobcallname()) - .jobcallId(hrmSnapshotPO.getJobcall() == null ? null :NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getJobcall()))) + .jobcallId(hrmSnapshotPO.getJobcall() == null ? null : NumberUtil.parseLong(Util.null2String(hrmSnapshotPO.getJobcall()))) .birthday(hrmSnapshotPO.getBirthday()) .workYear(hrmSnapshotPO.getWorkyear() == null ? null : hrmSnapshotPO.getWorkyear().doubleValue()) .companyWorkYear(hrmSnapshotPO.getCompanyworkyear() == null ? null : hrmSnapshotPO.getCompanyworkyear().doubleValue())