调整导出, 新增推送金蝶
This commit is contained in:
parent
d61d08fcbc
commit
4e3a045a42
@ -214,6 +214,15 @@
|
|||||||
<artifactId>nashorn-core</artifactId>
|
<artifactId>nashorn-core</artifactId>
|
||||||
<version>15.4</version>
|
<version>15.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!-- 金蝶 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.kingdee.bos</groupId>
|
||||||
|
<artifactId>k3cloud-webapi-sdk-java11</artifactId>
|
||||||
|
<version>v8.2.0</version>
|
||||||
|
<scope>system</scope>
|
||||||
|
<systemPath>${project.basedir}/src/main/resources/lib/k3cloud-webapi-sdk-java11-v8.2.0.jar</systemPath>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
@ -5,9 +5,11 @@ import java.lang.annotation.Retention;
|
|||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
import com.evo.common.utils.poi.handler.ExcelFieldHandlerAdapter;
|
||||||
import org.apache.poi.ss.usermodel.HorizontalAlignment;
|
import org.apache.poi.ss.usermodel.HorizontalAlignment;
|
||||||
import org.apache.poi.ss.usermodel.IndexedColors;
|
import org.apache.poi.ss.usermodel.IndexedColors;
|
||||||
import com.evo.common.utils.poi.ExcelHandlerAdapter;
|
import com.evo.common.utils.poi.handler.ExcelHandlerAdapter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 自定义导出Excel数据注解
|
* 自定义导出Excel数据注解
|
||||||
@ -148,6 +150,15 @@ public @interface Excel
|
|||||||
*/
|
*/
|
||||||
public Class<?> handler() default ExcelHandlerAdapter.class;
|
public Class<?> handler() default ExcelHandlerAdapter.class;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自定义数据处理器
|
||||||
|
*/
|
||||||
|
public boolean customExcelField() default false;
|
||||||
|
/**
|
||||||
|
* 自定义数据处理器
|
||||||
|
*/
|
||||||
|
public Class<?> excelFieldHandler() default ExcelFieldHandlerAdapter.class;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 自定义数据处理器参数
|
* 自定义数据处理器参数
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -284,7 +284,7 @@ public class ParamUtils {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static List<Long> getFullPaidLeave(){
|
public static List<Long> getFullPaidLeave(){
|
||||||
RzSysParam param= paramService.getRzSysParam("全薪发放的假期", "full_paid_leave","54,56,58,59,60","全薪发放的假期; 54-年休假,56-婚假,58-陪产假,59-丧假,60-工伤假");
|
RzSysParam param= paramService.getRzSysParam("全薪发放的假期", "full_paid_leave","54,56,57,58,59,60","全薪发放的假期; 54-年休假, 56-婚假,57-产假,58-陪产假,59-丧假,60-工伤假 (55-调休假 这是个特殊的假期, 加班会自动抵扣)");
|
||||||
return Collections.asList(param.getParamValue().split(",")).stream().filter(StringUtils::isNotEmpty).map(Long::valueOf).collect(Collectors.toList());
|
return Collections.asList(param.getParamValue().split(",")).stream().filter(StringUtils::isNotEmpty).map(Long::valueOf).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -24,6 +24,8 @@ import java.util.Set;
|
|||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import com.evo.common.utils.poi.handler.ExcelHandlerAdapter;
|
||||||
import org.apache.commons.lang3.ArrayUtils;
|
import org.apache.commons.lang3.ArrayUtils;
|
||||||
import org.apache.commons.lang3.RegExUtils;
|
import org.apache.commons.lang3.RegExUtils;
|
||||||
import org.apache.commons.lang3.reflect.FieldUtils;
|
import org.apache.commons.lang3.reflect.FieldUtils;
|
||||||
|
|||||||
1889
evo-admin/src/main/java/com/evo/common/utils/poi/ExcelUtil1.java
Normal file
1889
evo-admin/src/main/java/com/evo/common/utils/poi/ExcelUtil1.java
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,20 @@
|
|||||||
|
package com.evo.common.utils.poi.handler;
|
||||||
|
|
||||||
|
import com.evo.common.annotation.Excel;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 特殊出具处理接口
|
||||||
|
*
|
||||||
|
* @ClassName:ExcelFieldHandlerAdapter
|
||||||
|
* @date: 2025年07月12日 10:40
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
public interface ExcelFieldHandlerAdapter {
|
||||||
|
|
||||||
|
List<String> buildExcel();
|
||||||
|
}
|
||||||
@ -1,4 +1,4 @@
|
|||||||
package com.evo.common.utils.poi;
|
package com.evo.common.utils.poi.handler;
|
||||||
|
|
||||||
import org.apache.poi.ss.usermodel.Cell;
|
import org.apache.poi.ss.usermodel.Cell;
|
||||||
import org.apache.poi.ss.usermodel.Workbook;
|
import org.apache.poi.ss.usermodel.Workbook;
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
package com.evo.common.utils.poi.handler.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.evo.common.constant.Constants;
|
||||||
|
import com.evo.common.utils.Collections;
|
||||||
|
import com.evo.common.utils.poi.handler.ExcelFieldHandlerAdapter;
|
||||||
|
import com.evo.common.utils.spring.SpringUtils;
|
||||||
|
import com.evo.personnelMatters.domain.RzSubsidyInfo;
|
||||||
|
import com.evo.personnelMatters.mapper.RzSubsidyInfoMapper;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类
|
||||||
|
*
|
||||||
|
* @ClassName:SysStaffExcelFieldHandlerAdapter
|
||||||
|
* @date: 2025年07月12日 10:42
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class SysStaffExcelFieldHandlerAdapter implements ExcelFieldHandlerAdapter {
|
||||||
|
@Override
|
||||||
|
public List<String> buildExcel() {
|
||||||
|
return SpringUtils.getBean(RzSubsidyInfoMapper.class).selectList(new LambdaQueryWrapper<RzSubsidyInfo>().eq(RzSubsidyInfo::getDelFlag, Constants.DELETE_FLAG_0)).stream().map(RzSubsidyInfo::getName).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,109 @@
|
|||||||
|
package com.evo.kingdeeUtils;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSON;
|
||||||
|
import com.evo.common.utils.DateUtils;
|
||||||
|
import com.evo.common.utils.spring.SpringUtils;
|
||||||
|
import com.evo.kingdeeUtils.exception.KingdeeException;
|
||||||
|
import com.evo.kingdeeUtils.kenum.BaseEnum;
|
||||||
|
import com.evo.kingdeeUtils.kenum.KingdeeParamsEnum;
|
||||||
|
import com.evo.kingdeeUtils.mapper.LogKingDeeMapper;
|
||||||
|
import com.evo.kingdeeUtils.vo.LogKingDee;
|
||||||
|
import com.kingdee.bos.webapi.sdk.K3CloudApi;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类
|
||||||
|
*
|
||||||
|
* @ClassName:KingdeeRequestUtils
|
||||||
|
* @date: 2025年07月11日 9:33
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
public class KingdeeRequestUtils {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 员工保存接口
|
||||||
|
* @param params
|
||||||
|
* 参数说明对照关系: key-value
|
||||||
|
* FName-员工姓名
|
||||||
|
* FStaffNumber-员工编号
|
||||||
|
* FNumber-岗位编号
|
||||||
|
* FPostDept_FNumber_岗位所属部门编号
|
||||||
|
*/
|
||||||
|
public static void employeeSave(Map<String, String> params){
|
||||||
|
// request(params, KingdeeParamsEnum.Employee.SAVE);
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 员工禁用接口
|
||||||
|
* @param params
|
||||||
|
* 参数说明对照关系: key-value
|
||||||
|
* Numbers-员工编码 (多个使用,分割, 即: 001,002,003)
|
||||||
|
*/
|
||||||
|
public static void employeeDisabled(Map<String, String> params){
|
||||||
|
// request(params, KingdeeParamsEnum.Employee.DISABLED);
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 岗位调整
|
||||||
|
* @param params
|
||||||
|
* 参数说明对照关系: key-value
|
||||||
|
* NeedUpDateFields-更新字段 (多个使用,分割, 如:FDept_FNumber,FPosition_FNumber )
|
||||||
|
* FNumber-员工编号
|
||||||
|
* FDept_FNumber-部门编号
|
||||||
|
* FPosition_FNumber-岗位编号
|
||||||
|
*/
|
||||||
|
public static void updateJobInfo(Map<String, String> params){
|
||||||
|
// request(params, KingdeeParamsEnum.JobInfo.UPDATE);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void request(Map<String, String> params, BaseEnum paramEnum){
|
||||||
|
log.error("{}====> 接口调用, 参数为:{} ", paramEnum.getDes(), JSON.toJSONString(params));
|
||||||
|
List<String> keyList = params.entrySet().stream().map(Map.Entry<String, String>::getKey).collect(Collectors.toList());
|
||||||
|
Map<String,String> requiredParams = paramEnum.getRequiredParams();
|
||||||
|
for (String key : requiredParams.keySet()){
|
||||||
|
if(!keyList.contains(key)){
|
||||||
|
throw new KingdeeException(requiredParams.get(key));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String requestParam = paramEnum.getParamJson();
|
||||||
|
for (String key : params.keySet()){
|
||||||
|
requestParam = requestParam.replaceAll(key+ KingdeeParamsEnum.REQUEST_PARAM_SUFFIX, params.get(key));
|
||||||
|
}
|
||||||
|
//更新时间
|
||||||
|
requestParam = requestParam.replaceAll("date"+KingdeeParamsEnum.REQUEST_PARAM_SUFFIX, DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", new Date()));
|
||||||
|
String resultJson = "";
|
||||||
|
try {
|
||||||
|
K3CloudApi client = new K3CloudApi();
|
||||||
|
resultJson = client.save(paramEnum.getFromId(), requestParam);
|
||||||
|
log.info("{}====>接口返回结果: {}", paramEnum.getDes(), resultJson);
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
resultJson = e.getMessage();
|
||||||
|
log.error("{}====>请求错误: {}", paramEnum.getDes(), e.getMessage());
|
||||||
|
}finally {
|
||||||
|
//记录日志
|
||||||
|
instLog(paramEnum, params, requestParam, resultJson);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static void instLog(BaseEnum paramEnum, Map<String, String> params, String requestInfo, String response){
|
||||||
|
LogKingDee logKingDee = new LogKingDee();
|
||||||
|
logKingDee.setRequestTime(new Date());
|
||||||
|
logKingDee.setType(paramEnum.getDes());
|
||||||
|
logKingDee.setRequestParams(JSON.toJSONString(params));
|
||||||
|
logKingDee.setRequestInfo(requestInfo);
|
||||||
|
logKingDee.setResponse(response);
|
||||||
|
SpringUtils.getBean(LogKingDeeMapper.class).insert(logKingDee);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,29 @@
|
|||||||
|
package com.evo.kingdeeUtils.exception;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类
|
||||||
|
*
|
||||||
|
* @ClassName:KingdeeException
|
||||||
|
* @date: 2025年07月11日 10:02
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
public class KingdeeException extends RuntimeException{
|
||||||
|
|
||||||
|
public KingdeeException(String message){
|
||||||
|
super(message);
|
||||||
|
log.error("推送金蝶出现错误---->>>>>>>{}", message);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public KingdeeException(String message, Throwable e)
|
||||||
|
{
|
||||||
|
super(message, e);
|
||||||
|
log.error("推送金蝶出现错误---->>>>>>>错误信息{}, 异常信息:{}", message, e.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,24 @@
|
|||||||
|
package com.evo.kingdeeUtils.kenum;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 枚举
|
||||||
|
* @ClassName:BaseEnum
|
||||||
|
* @date: 2025年07月11日 10:26
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
public interface BaseEnum {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
abstract Map<String,String> getRequiredParams();
|
||||||
|
|
||||||
|
abstract String getParamJson();
|
||||||
|
|
||||||
|
abstract String getFromId();
|
||||||
|
|
||||||
|
abstract String getDes();
|
||||||
|
}
|
||||||
@ -0,0 +1,97 @@
|
|||||||
|
package com.evo.kingdeeUtils.kenum;
|
||||||
|
|
||||||
|
import com.evo.common.utils.Collections;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 金蝶请求的参数类枚举
|
||||||
|
*
|
||||||
|
* @ClassName:KingdeeRequest
|
||||||
|
* @date: 2025年07月11日 8:59
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
public enum KingdeeParamsEnum {
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
Enum paramEnum;
|
||||||
|
|
||||||
|
|
||||||
|
KingdeeParamsEnum() {
|
||||||
|
}
|
||||||
|
|
||||||
|
KingdeeParamsEnum(Enum paramEnum) {
|
||||||
|
this.paramEnum = paramEnum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static final String REQUEST_PARAM_SUFFIX="_param";
|
||||||
|
|
||||||
|
public enum JobInfo implements BaseEnum{
|
||||||
|
UPDATE("岗位信息修改", "BD_NEWSTAFF", Collections.asMap("FNumber","员工编号不能为空","FDept_FNumber","部门编号不能为空","FPosition_FNumber","岗位编号不能为空"),"{\"NeedUpDateFields\":[NeedUpDateFields"+REQUEST_PARAM_SUFFIX+"],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"true\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"true\",\"ValidateFlag\":\"true\",\"NumberSearch\":\"true\",\"IsAutoAdjustField\":\"true\",\"InterationFlags\":\"\",\"IgnoreInterationFlag\":\"\",\"IsControlPrecision\":\"false\",\"ValidateRepeatJson\":\"false\",\"Model\":{\"FSTAFFID\":0,\"FNumber\":\"FNumber"+REQUEST_PARAM_SUFFIX+"\",\"FPerson\":{\"FNumber\":\"FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FDept\":{\"FNumber\":\"FDept_FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FPosition\":{\"FNumber\":\"FPosition_FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FStartDate\":\"date"+REQUEST_PARAM_SUFFIX+"\",\"FEmpInfoId\":{\"FNumber\":\"FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FPOSTBILLEntity\":{\"FIsFirstPost\":false},\"FOtherEntity\":{},\"FSHRMapEntity\":{}}}"),
|
||||||
|
;
|
||||||
|
String des;
|
||||||
|
String fromId;
|
||||||
|
Map<String,String> requiredParams;
|
||||||
|
String paramJson;
|
||||||
|
JobInfo(String des, String fromId, Map<String,String> requiredParams, String paramJson) {
|
||||||
|
this.des = des;
|
||||||
|
this.fromId = fromId;
|
||||||
|
this.requiredParams = requiredParams;
|
||||||
|
this.paramJson = paramJson;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public Map<String, String> getRequiredParams() {
|
||||||
|
return this.requiredParams;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getParamJson() {
|
||||||
|
return this.paramJson;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getFromId() {
|
||||||
|
return this.fromId;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getDes() {
|
||||||
|
return this.des;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/***
|
||||||
|
* 金蝶请求参数, 员工
|
||||||
|
*/
|
||||||
|
public enum Employee implements BaseEnum {
|
||||||
|
SAVE("员工保存", "BD_Empinfo", Collections.asMap("FName","员工姓名不能为空","FStaffNumber","员工编号不能为空","FNumber","岗位编号不能为空"),"{\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"true\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"true\",\"ValidateFlag\":\"true\",\"NumberSearch\":\"true\",\"IsAutoAdjustField\":\"true\",\"InterationFlags\":\"\",\"IgnoreInterationFlag\":\"\",\"IsControlPrecision\":\"false\",\"ValidateRepeatJson\":\"false\",\"Model\":{\"FID\":0,\"FName\":\"FName"+REQUEST_PARAM_SUFFIX+"\",\"FStaffNumber\":\"FStaffNumber"+REQUEST_PARAM_SUFFIX+"\",\"FCreateSaler\":false,\"FCreateUser\":false,\"FCreateCashier\":false,\"FJoinDate\":\"date"+REQUEST_PARAM_SUFFIX+"\",\"FSHRMapEntity\":{},\"FPostEntity\":[{\"FPostDept\":{\"FNumber\":\"FPostDept_FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FPost\":{\"FNumber\":\"FNumber"+REQUEST_PARAM_SUFFIX+"\"},\"FStaffStartDate\":\"date"+REQUEST_PARAM_SUFFIX+"\",\"FIsFirstPost\":true,\"FStaffDetails\":0}]}}"),
|
||||||
|
DISABLED("员工禁用","BD_Empinfo", Collections.asMap("Numbers","员工编码不能为空"),"{\"Numbers\":[Numbers"+REQUEST_PARAM_SUFFIX+"],\"Ids\":\"\",\"PkEntryIds\":[],\"UseOrgId\":0,\"NetworkCtrl\":\"\",\"IgnoreInterationFlag\":\"\"}")
|
||||||
|
;
|
||||||
|
String des;
|
||||||
|
String fromId;
|
||||||
|
Map<String,String> requiredParams;
|
||||||
|
String paramJson;
|
||||||
|
Employee(String des, String fromId, Map<String,String> requiredParams, String paramJson) {
|
||||||
|
this.des = des;
|
||||||
|
this.fromId = fromId;
|
||||||
|
this.requiredParams = requiredParams;
|
||||||
|
this.paramJson = paramJson;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public Map<String, String> getRequiredParams() {
|
||||||
|
return this.requiredParams;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getParamJson() {
|
||||||
|
return this.paramJson;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getFromId() {
|
||||||
|
return this.fromId;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getDes() {
|
||||||
|
return this.des;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,16 @@
|
|||||||
|
package com.evo.kingdeeUtils.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.evo.kingdeeUtils.vo.LogKingDee;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 金蝶日志请求接口
|
||||||
|
*
|
||||||
|
* @ClassName:LogKingDeeMapper
|
||||||
|
* @date: 2025年07月11日 11:18
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
public interface LogKingDeeMapper extends BaseMapper<LogKingDee> {
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
package com.evo.kingdeeUtils.vo;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 请求日志类
|
||||||
|
*
|
||||||
|
* @ClassName:LogKingDee
|
||||||
|
* @date: 2025年07月11日 11:15
|
||||||
|
* @author: andy.shi
|
||||||
|
* @contact: 17330188597
|
||||||
|
* @remark: 开发人员联系方式 1042025947@qq.com/微信同步
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("sys_log_king_dee")
|
||||||
|
public class LogKingDee implements Serializable {
|
||||||
|
|
||||||
|
/** 主键 */
|
||||||
|
@TableId(type= IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
private String requestParams;
|
||||||
|
|
||||||
|
private String requestInfo;
|
||||||
|
|
||||||
|
private String response;
|
||||||
|
|
||||||
|
private Date requestTime;
|
||||||
|
|
||||||
|
}
|
||||||
@ -6,10 +6,8 @@ import com.evo.common.core.domain.AjaxResult;
|
|||||||
import com.evo.common.core.page.TableDataInfo;
|
import com.evo.common.core.page.TableDataInfo;
|
||||||
import com.evo.common.enums.BusinessType;
|
import com.evo.common.enums.BusinessType;
|
||||||
import com.evo.common.utils.poi.ExcelUtil;
|
import com.evo.common.utils.poi.ExcelUtil;
|
||||||
import com.evo.personnelMatters.domain.RzSubsidy;
|
|
||||||
import com.evo.personnelMatters.domain.RzSubsidyInfo;
|
import com.evo.personnelMatters.domain.RzSubsidyInfo;
|
||||||
import com.evo.personnelMatters.service.IRzSubsidyInfoService;
|
import com.evo.personnelMatters.service.IRzSubsidyInfoService;
|
||||||
import com.evo.personnelMatters.service.IRzSubsidyService;
|
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
package com.evo.personnelMatters.domain;
|
package com.evo.personnelMatters.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.evo.common.annotation.Excel;
|
import com.evo.common.annotation.Excel;
|
||||||
import com.evo.common.core.domain.BaseEntity;
|
import com.evo.common.core.domain.BaseEntity;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@ -39,6 +41,7 @@ public class RzSubsidyInfo extends BaseEntity
|
|||||||
private String remarks;
|
private String remarks;
|
||||||
|
|
||||||
/** 删除标识 */
|
/** 删除标识 */
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
private String delFlag;
|
private String delFlag;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -52,9 +52,9 @@ public class SysStaffController extends BaseController
|
|||||||
@PostMapping("/export")
|
@PostMapping("/export")
|
||||||
public void export(HttpServletResponse response, SysStaff sysStaff)
|
public void export(HttpServletResponse response, SysStaff sysStaff)
|
||||||
{
|
{
|
||||||
List<SysStaff> list = sysStaffService.selectSysStaffList(sysStaff);
|
sysStaffService.exportInfo(response, sysStaff);
|
||||||
ExcelUtil<SysStaff> util = new ExcelUtil<SysStaff>(SysStaff.class);
|
// ExcelUtil<SysStaff> util = new ExcelUtil<SysStaff>(SysStaff.class);
|
||||||
util.exportExcel(response, list, "员工管理数据");
|
// util.exportExcel(response, list, "员工管理数据");
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 导出员工详情
|
* 导出员工详情
|
||||||
@ -63,9 +63,11 @@ public class SysStaffController extends BaseController
|
|||||||
@PostMapping("/exportDetail")
|
@PostMapping("/exportDetail")
|
||||||
public void exportDetail(HttpServletResponse response, SysStaff sysStaff)
|
public void exportDetail(HttpServletResponse response, SysStaff sysStaff)
|
||||||
{
|
{
|
||||||
List<SysStaffVo> list = sysStaffService.selectSysStaffDetailList(sysStaff);
|
|
||||||
ExcelUtil<SysStaffVo> util = new ExcelUtil<SysStaffVo>(SysStaffVo.class);
|
sysStaffService.exportInfo(response, sysStaff);
|
||||||
util.exportExcel(response, list, "员工详情数据");
|
// List<SysStaffVo> list = sysStaffService.selectSysStaffDetailList(sysStaff);
|
||||||
|
// ExcelUtil<SysStaffVo> util = new ExcelUtil<SysStaffVo>(SysStaffVo.class);
|
||||||
|
// util.exportExcel(response, list, "员工详情数据");
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 获取员工管理详细信息
|
* 获取员工管理详细信息
|
||||||
|
|||||||
@ -47,6 +47,8 @@ public class SysStaff extends BaseEntity
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String deptName;
|
private String deptName;
|
||||||
|
|
||||||
|
private String jobCode;
|
||||||
|
|
||||||
/** 身份证号 */
|
/** 身份证号 */
|
||||||
@Excel(name = "身份证号")
|
@Excel(name = "身份证号")
|
||||||
private String idCard;
|
private String idCard;
|
||||||
|
|||||||
@ -1,769 +1,125 @@
|
|||||||
package com.evo.system.domain.vo;
|
package com.evo.system.domain.vo;
|
||||||
|
|
||||||
import com.evo.common.annotation.Excel;
|
import com.evo.common.annotation.Excel;
|
||||||
|
import com.evo.common.utils.poi.handler.impl.SysStaffExcelFieldHandlerAdapter;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Data
|
||||||
public class SysStaffVo {
|
public class SysStaffVo {
|
||||||
/** 姓名 */
|
|
||||||
@Excel(name = "* 姓名")
|
@Excel(name = "* 姓名")
|
||||||
private String name;
|
private String name;
|
||||||
|
@Excel(name = "* 公司", dictType = "sys_company")
|
||||||
|
private String companyName;
|
||||||
@Excel(name = "* 部门")
|
@Excel(name = "* 部门")
|
||||||
private String deptName;
|
private String deptName;
|
||||||
/** 编号 */
|
|
||||||
@Excel(name = "编号")
|
@Excel(name = "编号")
|
||||||
private String code;
|
private String code;
|
||||||
/** 身份证号 */
|
|
||||||
@Excel(name = "* 身份证号")
|
@Excel(name = "* 身份证号")
|
||||||
private String idCard;
|
private String idCard;
|
||||||
/** 性别 */
|
@Excel(name = "性别", dictType = "sys_user_sex")
|
||||||
@Excel(name = "性别")
|
|
||||||
private String sex;
|
private String sex;
|
||||||
/** 年龄 */
|
|
||||||
@Excel(name = "年龄")
|
@Excel(name = "年龄")
|
||||||
private Long age;
|
private Long age;
|
||||||
/** 电话 */
|
|
||||||
@Excel(name = "电话")
|
@Excel(name = "电话")
|
||||||
private String phone;
|
private String phone;
|
||||||
/** 住址 */
|
|
||||||
@Excel(name = "住址")
|
@Excel(name = "住址")
|
||||||
private String address;
|
private String address;
|
||||||
/** 学历 */
|
@Excel(name = "* 学历", dictType = "sys_level")
|
||||||
@Excel(name = "* 学历")
|
|
||||||
private String level;
|
private String level;
|
||||||
/** 专业 */
|
|
||||||
@Excel(name = "专业")
|
|
||||||
private String major;
|
|
||||||
/** 毕业学校 */
|
|
||||||
@Excel(name = "毕业学校")
|
@Excel(name = "毕业学校")
|
||||||
private String school;
|
private String school;
|
||||||
/** 银行卡号 */
|
@Excel(name = "专业")
|
||||||
@Excel(name = "银行卡号")
|
private String major;
|
||||||
private String bankNumber;
|
|
||||||
/** 开户行 */
|
|
||||||
@Excel(name = "开户行")
|
@Excel(name = "开户行")
|
||||||
private String bank;
|
private String bank;
|
||||||
/** 入职时间 */
|
@Excel(name = "银行卡号")
|
||||||
|
private String bankNumber;
|
||||||
|
|
||||||
|
@Excel(name = "在职状态", dictType = "sys_worker_status")
|
||||||
|
private String status;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = " * 入职时间", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = " * 入职时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date employmentDate;
|
private Date employmentDate;
|
||||||
/** 全额工资时间 */
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
|
||||||
@Excel(name = "全额工资时间", width = 30, dateFormat = "yyyy-MM-dd")
|
|
||||||
private Date wagesRatioDate;
|
|
||||||
/** 履历 */
|
|
||||||
@Excel(name = "履历")
|
|
||||||
private String experience;
|
|
||||||
/** 试用期限 */
|
|
||||||
@Excel(name = "试用期限")
|
@Excel(name = "试用期限")
|
||||||
private Long workerTerm;
|
private Long workerTerm;
|
||||||
/** 转正日期 */
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = "转正日期", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "转正日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date regularDate;
|
private Date regularDate;
|
||||||
/** 离职时间 */
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = "离职时间", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "离职时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date quitDate;
|
private Date quitDate;
|
||||||
/** 合同-起 */
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = "合同-起", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "合同-起", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date contractStart;
|
private Date contractStart;
|
||||||
/** 合同-止 */
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = "合同-止", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "合同-止", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date contractEnd;
|
private Date contractEnd;
|
||||||
/** 合同类型 */
|
|
||||||
@Excel(name = "* 合同期限")
|
|
||||||
private String contractType;
|
|
||||||
@Excel(name = "* 是否新农合")
|
@Excel(name = "* 是否新农合")
|
||||||
private String socialSubsidy;
|
private String socialSubsidy;
|
||||||
/** 社保 */
|
|
||||||
@Excel(name = "* 社保")
|
@Excel(name = "* 社保")
|
||||||
private String socialType;
|
private String socialType;
|
||||||
/** 工龄 */
|
|
||||||
@Excel(name = "工龄")
|
@Excel(name = "工龄")
|
||||||
private Long seniority;
|
private Long seniority;
|
||||||
|
@Excel(name = "* 是否住宿")
|
||||||
/** 是否有加班费 */
|
|
||||||
@Excel(name = "* 加班费")
|
|
||||||
private String isOvertimePay;
|
|
||||||
/** 住宿标识 */
|
|
||||||
@Excel(name = "* 住宿")
|
|
||||||
private String zsFlag;
|
private String zsFlag;
|
||||||
/** 保密合同 */
|
@Excel(name = "工伤险")
|
||||||
@Excel(name = "保密合同")
|
|
||||||
private String secrecy;
|
|
||||||
/** 工伤 */
|
|
||||||
@Excel(name = "工伤")
|
|
||||||
private String injury;
|
private String injury;
|
||||||
/** 雇主险 */
|
|
||||||
@Excel(name = "雇主险")
|
@Excel(name = "雇主险")
|
||||||
private String insurance;
|
private String insurance;
|
||||||
/** 介绍人 */
|
@Excel(name = "* 是否打卡")
|
||||||
@Excel(name = "介绍人")
|
|
||||||
private String introducer;
|
|
||||||
/** 是否打卡 */
|
|
||||||
@Excel(name = "* 打卡")
|
|
||||||
private String clockIn;
|
private String clockIn;
|
||||||
/** 在职状态 */
|
|
||||||
@Excel(name = "在职状态")
|
|
||||||
private String status;
|
|
||||||
@Excel(name = "* 公司")
|
|
||||||
private String companyName;
|
|
||||||
@Excel(name = "基本工资")
|
@Excel(name = "基本工资")
|
||||||
private BigDecimal basicSalary;
|
private BigDecimal basicSalary;
|
||||||
/** 岗位工资 */
|
|
||||||
@Excel(name = "岗位工资")
|
@Excel(name = "岗位工资")
|
||||||
private BigDecimal jobsSalary;
|
private BigDecimal jobsSalary;
|
||||||
/** 日薪 */
|
|
||||||
@Excel(name = "日薪")
|
@Excel(name = "日薪")
|
||||||
private BigDecimal dailyWage;
|
private BigDecimal dailyWage;
|
||||||
/** 时薪 */
|
@Excel(name = "享有补助", customExcelField = true, excelFieldHandler= SysStaffExcelFieldHandlerAdapter.class, defaultValue = "0")
|
||||||
@Excel(name = "时薪")
|
private Map<String, Object> subsidyMap;
|
||||||
private BigDecimal hoursSalary;
|
|
||||||
/** 全勤奖 */
|
|
||||||
@Excel(name = "全勤奖")
|
|
||||||
private BigDecimal fullFrequentlySubsidies;
|
|
||||||
/** 学历补助 */
|
|
||||||
@Excel(name = "学历补助")
|
|
||||||
private BigDecimal levelOfEducationSubsidies;
|
|
||||||
/** 合同补助 */
|
|
||||||
@Excel(name = "合同补助")
|
|
||||||
private BigDecimal contractSubsidies;
|
|
||||||
/** 工龄补助 */
|
|
||||||
@Excel(name = "工龄补助")
|
|
||||||
private BigDecimal senioritySubsidies;
|
|
||||||
/** 社保补助 */
|
|
||||||
@Excel(name = "社保补助")
|
|
||||||
private BigDecimal socialSecuritySubsidies;
|
|
||||||
|
|
||||||
@Excel(name = "中班补助")
|
|
||||||
private BigDecimal middleSubsidies;
|
|
||||||
/** 夜班补助 */
|
|
||||||
@Excel(name = "夜班补助")
|
|
||||||
private BigDecimal nightShiftSubsidies;
|
|
||||||
/** 夜餐补助 */
|
|
||||||
@Excel(name = "夜餐补助")
|
|
||||||
private BigDecimal dinnerSubsidies;
|
|
||||||
/** 固定补助 */
|
|
||||||
@Excel(name = "固定补助")
|
@Excel(name = "固定补助")
|
||||||
private BigDecimal fixedAllowance;
|
private BigDecimal fixedAllowance;
|
||||||
/** 其他补助 */
|
|
||||||
@Excel(name = "其他补助")
|
|
||||||
private BigDecimal otherSubsidies;
|
|
||||||
/** 早餐消费 */
|
|
||||||
@Excel(name = "早餐消费")
|
|
||||||
private BigDecimal breakfastExpend;
|
|
||||||
/** 午餐消费 */
|
|
||||||
@Excel(name = "午餐消费")
|
|
||||||
private BigDecimal lunchExpend;
|
|
||||||
/** 晚餐消费 */
|
|
||||||
@Excel(name = "晚餐消费")
|
|
||||||
private BigDecimal supperExpend;
|
|
||||||
/** 离职扣款 */
|
|
||||||
@Excel(name = "离职扣款")
|
|
||||||
private BigDecimal subsidyDeductMoney;
|
|
||||||
/** 其他扣款 */
|
|
||||||
@Excel(name = "其他扣款")
|
|
||||||
private BigDecimal deductions;
|
|
||||||
/** 养老保险 */
|
|
||||||
@Excel(name = "养老保险")
|
@Excel(name = "养老保险")
|
||||||
private BigDecimal endowmentInsurance;
|
private BigDecimal endowmentInsurance;
|
||||||
/** 医疗保险 */
|
|
||||||
@Excel(name = "医疗保险")
|
@Excel(name = "医疗保险")
|
||||||
private BigDecimal medicalInsurance;
|
private BigDecimal medicalInsurance;
|
||||||
/** 工伤保险 */
|
|
||||||
@Excel(name = "工伤保险")
|
@Excel(name = "工伤保险")
|
||||||
private BigDecimal employmentInjuryInsurance;
|
private BigDecimal employmentInjuryInsurance;
|
||||||
/** 生育保险 */
|
|
||||||
@Excel(name = "生育保险")
|
@Excel(name = "生育保险")
|
||||||
private BigDecimal maternityInsurance;
|
private BigDecimal maternityInsurance;
|
||||||
/** 失业保险 */
|
|
||||||
@Excel(name = "失业保险")
|
@Excel(name = "失业保险")
|
||||||
private BigDecimal unemploymentInsurance;
|
private BigDecimal unemploymentInsurance;
|
||||||
/** 公积金 */
|
|
||||||
@Excel(name = "公积金")
|
@Excel(name = "公积金")
|
||||||
private BigDecimal accumulationFund;
|
private BigDecimal accumulationFund;
|
||||||
/** 子女教育 */
|
|
||||||
@Excel(name = "子女教育")
|
@Excel(name = "子女教育")
|
||||||
private BigDecimal childrenEducation;
|
private BigDecimal childrenEducation;
|
||||||
/** 赡养老人 */
|
|
||||||
@Excel(name = "赡养老人")
|
@Excel(name = "赡养老人")
|
||||||
private BigDecimal supportTheOld;
|
private BigDecimal supportTheOld;
|
||||||
/** 住房贷款 */
|
|
||||||
@Excel(name = "住房贷款")
|
@Excel(name = "住房贷款")
|
||||||
private BigDecimal housingLoans;
|
private BigDecimal housingLoans;
|
||||||
/** 住房租金 */
|
|
||||||
@Excel(name = "住房租金")
|
@Excel(name = "住房租金")
|
||||||
private BigDecimal housingRents;
|
private BigDecimal housingRents;
|
||||||
/** 继续教育 */
|
|
||||||
@Excel(name = "继续教育")
|
@Excel(name = "继续教育")
|
||||||
private BigDecimal adultEducation;
|
private BigDecimal adultEducation;
|
||||||
/** 大病医疗 */
|
|
||||||
@Excel(name = "大病医疗")
|
@Excel(name = "大病医疗")
|
||||||
private BigDecimal treatmentForSeriousDisease;
|
private BigDecimal treatmentForSeriousDisease;
|
||||||
/** 本年累计专项附加扣除 */
|
|
||||||
@Excel(name = "本年累计专项附加扣除")
|
@Excel(name = "本年累计专项附加扣除")
|
||||||
private BigDecimal specialDeduction;
|
private BigDecimal specialDeduction;
|
||||||
/** 本年累计已发工资 */
|
|
||||||
@Excel(name = "本年累计已发工资")
|
@Excel(name = "本年累计已发工资")
|
||||||
private BigDecimal totalWages;
|
private BigDecimal totalWages;
|
||||||
/** 本年累计已缴个税 */
|
|
||||||
@Excel(name = "本年累计已缴个税")
|
@Excel(name = "本年累计已缴个税")
|
||||||
private BigDecimal aggregatePersonalIncomeTax;
|
private BigDecimal aggregatePersonalIncomeTax;
|
||||||
/** 备注 */
|
|
||||||
@Excel(name = "备注")
|
@Excel(name = "备注")
|
||||||
private String remarks;
|
private String remarks;
|
||||||
|
|
||||||
public String getSocialSubsidy() {
|
|
||||||
return socialSubsidy;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSocialSubsidy(String socialSubsidy) {
|
|
||||||
this.socialSubsidy = socialSubsidy;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getMiddleSubsidies() {
|
|
||||||
return middleSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMiddleSubsidies(BigDecimal middleSubsidies) {
|
|
||||||
this.middleSubsidies = middleSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getCompanyName() {
|
|
||||||
return companyName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setCompanyName(String companyName) {
|
|
||||||
this.companyName = companyName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getDeptName() {
|
|
||||||
return deptName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDeptName(String deptName) {
|
|
||||||
this.deptName = deptName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getCode() {
|
|
||||||
return code;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setCode(String code) {
|
|
||||||
this.code = code;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getName() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setName(String name) {
|
|
||||||
this.name = name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getIdCard() {
|
|
||||||
return idCard;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setIdCard(String idCard) {
|
|
||||||
this.idCard = idCard;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSex() {
|
|
||||||
return sex;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSex(String sex) {
|
|
||||||
this.sex = sex;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Long getAge() {
|
|
||||||
return age;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAge(Long age) {
|
|
||||||
this.age = age;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getPhone() {
|
|
||||||
return phone;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPhone(String phone) {
|
|
||||||
this.phone = phone;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getAddress() {
|
|
||||||
return address;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAddress(String address) {
|
|
||||||
this.address = address;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getLevel() {
|
|
||||||
return level;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLevel(String level) {
|
|
||||||
this.level = level;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMajor() {
|
|
||||||
return major;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMajor(String major) {
|
|
||||||
this.major = major;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSchool() {
|
|
||||||
return school;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSchool(String school) {
|
|
||||||
this.school = school;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getBankNumber() {
|
|
||||||
return bankNumber;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBankNumber(String bankNumber) {
|
|
||||||
this.bankNumber = bankNumber;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getBank() {
|
|
||||||
return bank;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBank(String bank) {
|
|
||||||
this.bank = bank;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getEmploymentDate() {
|
|
||||||
return employmentDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEmploymentDate(Date employmentDate) {
|
|
||||||
this.employmentDate = employmentDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getWagesRatioDate() {
|
|
||||||
return wagesRatioDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setWagesRatioDate(Date wagesRatioDate) {
|
|
||||||
this.wagesRatioDate = wagesRatioDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getExperience() {
|
|
||||||
return experience;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setExperience(String experience) {
|
|
||||||
this.experience = experience;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Long getWorkerTerm() {
|
|
||||||
return workerTerm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setWorkerTerm(Long workerTerm) {
|
|
||||||
this.workerTerm = workerTerm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getRegularDate() {
|
|
||||||
return regularDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRegularDate(Date regularDate) {
|
|
||||||
this.regularDate = regularDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getQuitDate() {
|
|
||||||
return quitDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setQuitDate(Date quitDate) {
|
|
||||||
this.quitDate = quitDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getContractStart() {
|
|
||||||
return contractStart;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setContractStart(Date contractStart) {
|
|
||||||
this.contractStart = contractStart;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Date getContractEnd() {
|
|
||||||
return contractEnd;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setContractEnd(Date contractEnd) {
|
|
||||||
this.contractEnd = contractEnd;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getContractType() {
|
|
||||||
return contractType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setContractType(String contractType) {
|
|
||||||
this.contractType = contractType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSocialType() {
|
|
||||||
return socialType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSocialType(String socialType) {
|
|
||||||
this.socialType = socialType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Long getSeniority() {
|
|
||||||
return seniority;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSeniority(Long seniority) {
|
|
||||||
this.seniority = seniority;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getIsOvertimePay() {
|
|
||||||
return isOvertimePay;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setIsOvertimePay(String isOvertimePay) {
|
|
||||||
this.isOvertimePay = isOvertimePay;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getZsFlag() {
|
|
||||||
return zsFlag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setZsFlag(String zsFlag) {
|
|
||||||
this.zsFlag = zsFlag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSecrecy() {
|
|
||||||
return secrecy;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSecrecy(String secrecy) {
|
|
||||||
this.secrecy = secrecy;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getInjury() {
|
|
||||||
return injury;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setInjury(String injury) {
|
|
||||||
this.injury = injury;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getInsurance() {
|
|
||||||
return insurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setInsurance(String insurance) {
|
|
||||||
this.insurance = insurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getIntroducer() {
|
|
||||||
return introducer;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setIntroducer(String introducer) {
|
|
||||||
this.introducer = introducer;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getClockIn() {
|
|
||||||
return clockIn;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setClockIn(String clockIn) {
|
|
||||||
this.clockIn = clockIn;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getStatus() {
|
|
||||||
return status;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setStatus(String status) {
|
|
||||||
this.status = status;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getBasicSalary() {
|
|
||||||
return basicSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBasicSalary(BigDecimal basicSalary) {
|
|
||||||
this.basicSalary = basicSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getJobsSalary() {
|
|
||||||
return jobsSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setJobsSalary(BigDecimal jobsSalary) {
|
|
||||||
this.jobsSalary = jobsSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getDailyWage() {
|
|
||||||
return dailyWage;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDailyWage(BigDecimal dailyWage) {
|
|
||||||
this.dailyWage = dailyWage;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getHoursSalary() {
|
|
||||||
return hoursSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHoursSalary(BigDecimal hoursSalary) {
|
|
||||||
this.hoursSalary = hoursSalary;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getFullFrequentlySubsidies() {
|
|
||||||
return fullFrequentlySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFullFrequentlySubsidies(BigDecimal fullFrequentlySubsidies) {
|
|
||||||
this.fullFrequentlySubsidies = fullFrequentlySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getLevelOfEducationSubsidies() {
|
|
||||||
return levelOfEducationSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLevelOfEducationSubsidies(BigDecimal levelOfEducationSubsidies) {
|
|
||||||
this.levelOfEducationSubsidies = levelOfEducationSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getContractSubsidies() {
|
|
||||||
return contractSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setContractSubsidies(BigDecimal contractSubsidies) {
|
|
||||||
this.contractSubsidies = contractSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSenioritySubsidies() {
|
|
||||||
return senioritySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSenioritySubsidies(BigDecimal senioritySubsidies) {
|
|
||||||
this.senioritySubsidies = senioritySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSocialSecuritySubsidies() {
|
|
||||||
return socialSecuritySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSocialSecuritySubsidies(BigDecimal socialSecuritySubsidies) {
|
|
||||||
this.socialSecuritySubsidies = socialSecuritySubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getNightShiftSubsidies() {
|
|
||||||
return nightShiftSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setNightShiftSubsidies(BigDecimal nightShiftSubsidies) {
|
|
||||||
this.nightShiftSubsidies = nightShiftSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getDinnerSubsidies() {
|
|
||||||
return dinnerSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDinnerSubsidies(BigDecimal dinnerSubsidies) {
|
|
||||||
this.dinnerSubsidies = dinnerSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getFixedAllowance() {
|
|
||||||
return fixedAllowance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFixedAllowance(BigDecimal fixedAllowance) {
|
|
||||||
this.fixedAllowance = fixedAllowance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getOtherSubsidies() {
|
|
||||||
return otherSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setOtherSubsidies(BigDecimal otherSubsidies) {
|
|
||||||
this.otherSubsidies = otherSubsidies;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getBreakfastExpend() {
|
|
||||||
return breakfastExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBreakfastExpend(BigDecimal breakfastExpend) {
|
|
||||||
this.breakfastExpend = breakfastExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getLunchExpend() {
|
|
||||||
return lunchExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLunchExpend(BigDecimal lunchExpend) {
|
|
||||||
this.lunchExpend = lunchExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSupperExpend() {
|
|
||||||
return supperExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSupperExpend(BigDecimal supperExpend) {
|
|
||||||
this.supperExpend = supperExpend;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSubsidyDeductMoney() {
|
|
||||||
return subsidyDeductMoney;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSubsidyDeductMoney(BigDecimal subsidyDeductMoney) {
|
|
||||||
this.subsidyDeductMoney = subsidyDeductMoney;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getDeductions() {
|
|
||||||
return deductions;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDeductions(BigDecimal deductions) {
|
|
||||||
this.deductions = deductions;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getEndowmentInsurance() {
|
|
||||||
return endowmentInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEndowmentInsurance(BigDecimal endowmentInsurance) {
|
|
||||||
this.endowmentInsurance = endowmentInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getMedicalInsurance() {
|
|
||||||
return medicalInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMedicalInsurance(BigDecimal medicalInsurance) {
|
|
||||||
this.medicalInsurance = medicalInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getEmploymentInjuryInsurance() {
|
|
||||||
return employmentInjuryInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEmploymentInjuryInsurance(BigDecimal employmentInjuryInsurance) {
|
|
||||||
this.employmentInjuryInsurance = employmentInjuryInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getMaternityInsurance() {
|
|
||||||
return maternityInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMaternityInsurance(BigDecimal maternityInsurance) {
|
|
||||||
this.maternityInsurance = maternityInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getUnemploymentInsurance() {
|
|
||||||
return unemploymentInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUnemploymentInsurance(BigDecimal unemploymentInsurance) {
|
|
||||||
this.unemploymentInsurance = unemploymentInsurance;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getAccumulationFund() {
|
|
||||||
return accumulationFund;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAccumulationFund(BigDecimal accumulationFund) {
|
|
||||||
this.accumulationFund = accumulationFund;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getChildrenEducation() {
|
|
||||||
return childrenEducation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChildrenEducation(BigDecimal childrenEducation) {
|
|
||||||
this.childrenEducation = childrenEducation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSupportTheOld() {
|
|
||||||
return supportTheOld;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSupportTheOld(BigDecimal supportTheOld) {
|
|
||||||
this.supportTheOld = supportTheOld;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getHousingLoans() {
|
|
||||||
return housingLoans;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHousingLoans(BigDecimal housingLoans) {
|
|
||||||
this.housingLoans = housingLoans;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getHousingRents() {
|
|
||||||
return housingRents;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHousingRents(BigDecimal housingRents) {
|
|
||||||
this.housingRents = housingRents;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getAdultEducation() {
|
|
||||||
return adultEducation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAdultEducation(BigDecimal adultEducation) {
|
|
||||||
this.adultEducation = adultEducation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getTreatmentForSeriousDisease() {
|
|
||||||
return treatmentForSeriousDisease;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTreatmentForSeriousDisease(BigDecimal treatmentForSeriousDisease) {
|
|
||||||
this.treatmentForSeriousDisease = treatmentForSeriousDisease;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getSpecialDeduction() {
|
|
||||||
return specialDeduction;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSpecialDeduction(BigDecimal specialDeduction) {
|
|
||||||
this.specialDeduction = specialDeduction;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getTotalWages() {
|
|
||||||
return totalWages;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTotalWages(BigDecimal totalWages) {
|
|
||||||
this.totalWages = totalWages;
|
|
||||||
}
|
|
||||||
public BigDecimal getAggregatePersonalIncomeTax() {
|
|
||||||
return aggregatePersonalIncomeTax;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAggregatePersonalIncomeTax(BigDecimal aggregatePersonalIncomeTax) {
|
|
||||||
this.aggregatePersonalIncomeTax = aggregatePersonalIncomeTax;
|
|
||||||
}
|
|
||||||
public String getRemarks() {
|
|
||||||
return remarks;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRemarks(String remarks) {
|
|
||||||
this.remarks = remarks;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,6 +7,7 @@ import com.evo.system.domain.SysStaff;
|
|||||||
import com.evo.system.domain.vo.SysStaffVo;
|
import com.evo.system.domain.vo.SysStaffVo;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -100,4 +101,11 @@ public interface ISysStaffService extends IService<SysStaff>
|
|||||||
SysStaff selectByDepId(Long deptId);
|
SysStaff selectByDepId(Long deptId);
|
||||||
|
|
||||||
AjaxResult importSalesCommissions(List<RzSalaryVo> attendanceList);
|
AjaxResult importSalesCommissions(List<RzSalaryVo> attendanceList);
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 数据导出
|
||||||
|
* @param response
|
||||||
|
* @param sysStaff
|
||||||
|
*/
|
||||||
|
void exportInfo(HttpServletResponse response, SysStaff sysStaff);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,8 +11,14 @@ import com.evo.common.core.domain.entity.RzUpload;
|
|||||||
import com.evo.common.core.domain.entity.SysDept;
|
import com.evo.common.core.domain.entity.SysDept;
|
||||||
import com.evo.common.core.domain.entity.SysDictData;
|
import com.evo.common.core.domain.entity.SysDictData;
|
||||||
import com.evo.common.utils.*;
|
import com.evo.common.utils.*;
|
||||||
|
import com.evo.common.utils.Collections;
|
||||||
import com.evo.common.utils.bean.BeanUtils;
|
import com.evo.common.utils.bean.BeanUtils;
|
||||||
|
import com.evo.common.utils.poi.ExcelUtil;
|
||||||
|
import com.evo.common.utils.poi.ExcelUtil1;
|
||||||
import com.evo.equipment.service.IEqSnDetailService;
|
import com.evo.equipment.service.IEqSnDetailService;
|
||||||
|
import com.evo.kingdeeUtils.KingdeeRequestUtils;
|
||||||
|
import com.evo.personnelMatters.domain.RzSubsidyInfo;
|
||||||
|
import com.evo.personnelMatters.mapper.RzSubsidyInfoMapper;
|
||||||
import com.evo.restaurant.service.IRzRestaurantStatisticsService;
|
import com.evo.restaurant.service.IRzRestaurantStatisticsService;
|
||||||
import com.evo.system.domain.SysStaff;
|
import com.evo.system.domain.SysStaff;
|
||||||
import com.evo.system.domain.SysStaffDetail;
|
import com.evo.system.domain.SysStaffDetail;
|
||||||
@ -23,6 +29,7 @@ import com.evo.system.mapper.SysStaffDetailMapper;
|
|||||||
import com.evo.system.mapper.SysStaffMapper;
|
import com.evo.system.mapper.SysStaffMapper;
|
||||||
import com.evo.system.service.ISysStaffService;
|
import com.evo.system.service.ISysStaffService;
|
||||||
import com.evo.system.service.RzUploadService;
|
import com.evo.system.service.RzUploadService;
|
||||||
|
import com.evo.system.utils.SubsidyCalculationUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.ObjectUtils;
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
@ -35,14 +42,11 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.io.IOException;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.InputStream;
|
import java.io.*;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Calendar;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -69,6 +73,8 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
private RzUploadService rzUploadService;//文件上传
|
private RzUploadService rzUploadService;//文件上传
|
||||||
@Resource
|
@Resource
|
||||||
private IEqSnDetailService eqSnDetailService;//设备信息
|
private IEqSnDetailService eqSnDetailService;//设备信息
|
||||||
|
@Resource
|
||||||
|
private RzSubsidyInfoMapper rzSubsidyInfoMapper;
|
||||||
/**
|
/**
|
||||||
* 查询员工管理
|
* 查询员工管理
|
||||||
*
|
*
|
||||||
@ -152,6 +158,9 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
rzRestaurantStatisticsService.createRestaurantStatistics(sysStaff, DateUtils.getNowDate());
|
rzRestaurantStatisticsService.createRestaurantStatistics(sysStaff, DateUtils.getNowDate());
|
||||||
//处理考勤机相关信息
|
//处理考勤机相关信息
|
||||||
initCheckDevice(sysStaff);
|
initCheckDevice(sysStaff);
|
||||||
|
//新增员工信息到金蝶
|
||||||
|
KingdeeRequestUtils.employeeSave(Collections.asMap("FName", sysStaff.getName(), "FStaffNumber", sysStaff.getCode(), "FNumber", sysStaff.getJobCode().split("_")[0]));
|
||||||
|
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -223,6 +232,8 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
if(i < 1){
|
if(i < 1){
|
||||||
return AjaxResult.error();
|
return AjaxResult.error();
|
||||||
}
|
}
|
||||||
|
//如果是离职, 推送金蝶禁用
|
||||||
|
KingdeeRequestUtils.employeeDisabled(Collections.asMap("Numbers",sysStaff.getJobCode().split("_")[0]));
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -237,6 +248,10 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
}
|
}
|
||||||
//根据员工ID查询原来的数据信息
|
//根据员工ID查询原来的数据信息
|
||||||
SysStaff old_staff = getBaseMapper().selectSysStaffByUserId(sysStaff.getUserId());
|
SysStaff old_staff = getBaseMapper().selectSysStaffByUserId(sysStaff.getUserId());
|
||||||
|
//检查是否修改岗位
|
||||||
|
if(!old_staff.getJobCode().equals(sysStaff.getJobCode())) {
|
||||||
|
KingdeeRequestUtils.updateJobInfo(Collections.asMap("NeedUpDateFields","\"FDept\",\"FPosition\"", "FNumber", sysStaff.getCode(), "FDept_FNumber", sysStaff.getJobCode().split("_")[1], "FPosition_FNumber", sysStaff.getJobCode().split("_")[0]));
|
||||||
|
}
|
||||||
//判断员工更换公司
|
//判断员工更换公司
|
||||||
if(!old_staff.getCompanyName().equals(sysStaff.getCompanyName())) {
|
if(!old_staff.getCompanyName().equals(sysStaff.getCompanyName())) {
|
||||||
SysStaffDetail sysStaffDetail = sysStaffDetailMapper.selectSysStaffDetailByStaffId(sysStaff.getUserId());
|
SysStaffDetail sysStaffDetail = sysStaffDetailMapper.selectSysStaffDetailByStaffId(sysStaff.getUserId());
|
||||||
@ -480,8 +495,8 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
for (SysStaffVo Staffvo : staffList){
|
for (SysStaffVo Staffvo : staffList){
|
||||||
//判断必填项是否为空,为空执行下一条数据: 身份证号,姓名,部门,是否有加班费,入职日期,学历,打卡,合同,社保
|
//判断必填项是否为空,为空执行下一条数据: 身份证号,姓名,部门,是否有加班费,入职日期,学历,打卡,合同,社保
|
||||||
if(StringUtils.isEmpty(Staffvo.getIdCard()) || StringUtils.isEmpty(Staffvo.getName()) || StringUtils.isEmpty(Staffvo.getDeptName())
|
if(StringUtils.isEmpty(Staffvo.getIdCard()) || StringUtils.isEmpty(Staffvo.getName()) || StringUtils.isEmpty(Staffvo.getDeptName())
|
||||||
|| StringUtils.isEmpty(Staffvo.getIsOvertimePay()) || Staffvo.getEmploymentDate() == null || StringUtils.isEmpty(Staffvo.getLevel())
|
|| Staffvo.getEmploymentDate() == null || StringUtils.isEmpty(Staffvo.getLevel())
|
||||||
|| StringUtils.isEmpty(Staffvo.getClockIn()) || StringUtils.isEmpty(Staffvo.getContractType()) || StringUtils.isEmpty(Staffvo.getSocialType())
|
|| StringUtils.isEmpty(Staffvo.getClockIn()) || StringUtils.isEmpty(Staffvo.getSocialType())
|
||||||
|| StringUtils.isEmpty(Staffvo.getSocialSubsidy())){
|
|| StringUtils.isEmpty(Staffvo.getSocialSubsidy())){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -526,12 +541,12 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//合同年限
|
//合同年限
|
||||||
for (SysDictData sysDictData : ht_list) {
|
// for (SysDictData sysDictData : ht_list) {
|
||||||
if(sysDictData.getDictLabel().equals(Staffvo.getContractType())){
|
// if(sysDictData.getDictLabel().equals(Staffvo.getContractType())){
|
||||||
sysStaff.setContractType(sysDictData.getDictValue());
|
// sysStaff.setContractType(sysDictData.getDictValue());
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
//计算性别和年龄
|
//计算性别和年龄
|
||||||
if(StringUtils.isNotEmpty(sysStaff.getIdCard())){
|
if(StringUtils.isNotEmpty(sysStaff.getIdCard())){
|
||||||
//根据身份证解析性别和年龄
|
//根据身份证解析性别和年龄
|
||||||
@ -707,5 +722,45 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void exportInfo(HttpServletResponse response, SysStaff sysStaff) {
|
||||||
|
List<SysStaffVo> res_list = new ArrayList<SysStaffVo>();
|
||||||
|
//查询员工信息
|
||||||
|
List<SysStaff> yg_list = getBaseMapper().selectSysStaffList(sysStaff);
|
||||||
|
List<Long> userIds = yg_list.stream().map(SysStaff::getUserId).collect(Collectors.toList());
|
||||||
|
Map<Long, SysStaffDetail> detailMap = sysStaffDetailMapper.selectList(new LambdaQueryWrapper<SysStaffDetail>().eq(SysStaffDetail::getDelFlag, Constants.DELETE_FLAG_0).in(SysStaffDetail::getStaffId,userIds)).stream().collect(Collectors.toMap(SysStaffDetail::getStaffId, v->v));
|
||||||
|
List<RzSubsidyInfo> subsidyList = rzSubsidyInfoMapper.selectList(new LambdaQueryWrapper<RzSubsidyInfo>());
|
||||||
|
Map<Long, String> subsidyMap = rzSubsidyInfoMapper.selectList(new LambdaQueryWrapper<RzSubsidyInfo>()).stream().collect(Collectors.toMap(RzSubsidyInfo::getId, RzSubsidyInfo::getName));
|
||||||
|
|
||||||
|
for (SysStaff staff : yg_list) {
|
||||||
|
SysStaffVo sysStaffVo = new SysStaffVo();
|
||||||
|
BeanUtils.copyProperties(staff,sysStaffVo);
|
||||||
|
//根据员工信息查询详情信息
|
||||||
|
SysStaffDetail sysStaffDetail = SubsidyCalculationUtils.subsidyCalculation(staff,detailMap.get(staff.getUserId()), subsidyList);
|
||||||
|
BeanUtils.copyProperties(sysStaffDetail,sysStaffVo);
|
||||||
|
// StringBuilder subsidyInfo = new StringBuilder("");
|
||||||
|
// for (String key : sysStaffDetail.getExtendeds().keySet()){
|
||||||
|
// subsidyInfo.append(key).append("-").append(sysStaffDetail.getExtendeds().get(key)).append("元,");
|
||||||
|
// }
|
||||||
|
// sysStaffVo.setSubsidyInfo(subsidyInfo.toString());
|
||||||
|
sysStaffVo.setSubsidyMap(sysStaffDetail.getExtendeds());
|
||||||
|
res_list.add(sysStaffVo);
|
||||||
|
}
|
||||||
|
ExcelUtil1<SysStaffVo> util = new ExcelUtil1<SysStaffVo>(SysStaffVo.class);
|
||||||
|
util.exportExcel(response, res_list, "员工信息");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void main(String[] args) throws Exception {
|
||||||
|
|
||||||
|
BufferedReader reader = new BufferedReader(new FileReader(new File("D:\\andy\\文档\\考勤\\岗位任职部门信息.txt")));
|
||||||
|
String line = reader.readLine();
|
||||||
|
while (line != null) {
|
||||||
|
String[] configData = line.split("_");
|
||||||
|
System.out.println("update sys_dict_data set dict_value='"+line+"' where dict_value='"+configData[0]+"';\n");
|
||||||
|
line = reader.readLine();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@ -52,7 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectSysStaffVo">
|
<sql id="selectSysStaffVo">
|
||||||
select user_id,company_name, dept_id, code, name, id_card,is_leader, sex, age, phone, address, level, major, school, bank_number,social_subsidy, bank, employment_date, experience, worker_term, regular_date, quit_date, contract_start, contract_end, contract_type, social_type, seniority, is_overtime_pay, zs_flag, secrecy, injury, insurance, introducer, clock_in, status, wages_ratio_date, remarks, del_flag, create_by, create_time, update_by, update_time, image_url,time_clock,subsidys from sys_staff
|
select user_id,company_name, dept_id, code, name, id_card,is_leader, sex, age, phone, address, level, major, school, bank_number,social_subsidy, bank, employment_date, experience, worker_term, regular_date, quit_date, contract_start, contract_end, contract_type, social_type, seniority, is_overtime_pay, zs_flag, secrecy, injury, insurance, introducer, clock_in, status, wages_ratio_date, remarks, del_flag, create_by, create_time, update_by, update_time, image_url,time_clock,subsidys, job_code from sys_staff
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectSysStaffList" parameterType="com.evo.system.domain.SysStaff" resultMap="SysStaffResult">
|
<select id="selectSysStaffList" parameterType="com.evo.system.domain.SysStaff" resultMap="SysStaffResult">
|
||||||
@ -131,7 +131,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<if test="imageUrl != null">image_url,</if>
|
<if test="imageUrl != null">image_url,</if>
|
||||||
<if test="timeClock != null">time_clock,</if>
|
<if test="timeClock != null">time_clock,</if>
|
||||||
<if test="subsidys != null">subsidys,</if>
|
<if test="subsidys != null">subsidys,</if>
|
||||||
|
<if test="jobCode != null">job_code,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="companyName != null">#{companyName},</if>
|
<if test="companyName != null">#{companyName},</if>
|
||||||
@ -178,6 +178,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<if test="imageUrl != null">#{imageUrl},</if>
|
<if test="imageUrl != null">#{imageUrl},</if>
|
||||||
<if test="timeClock != null">#{timeClock},</if>
|
<if test="timeClock != null">#{timeClock},</if>
|
||||||
<if test="subsidys != null">#{subsidys},</if>
|
<if test="subsidys != null">#{subsidys},</if>
|
||||||
|
<if test="jobCode != null">#{jobCode},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user