Commit 1f5ab53a authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/develop' into develop

parents 6259bb3f c47b82f0
......@@ -263,7 +263,7 @@ public class EmployeeProjectExportVO{
* 合同类型(字典值)
*/
@ExcelProperty(value ="合同类型")
@ExcelAttribute(name = "合同类型", isDataId = true,dataType = ExcelAttributeConstants.EMPLOYEE_CONTRACT_TYPE)
@ExcelAttribute(name = "合同类型", isDataId = true,dataType = ExcelAttributeConstants.PERSONNEL_TYPE)
private String contractType;
/**
......@@ -335,18 +335,21 @@ public class EmployeeProjectExportVO{
* 业务类型一级分类
*/
@ExcelProperty(value ="业务类型一级分类")
@ExcelAttribute(name = "业务类型一级分类", isDataId = true,dataType = ExcelAttributeConstants.CUSTOMER_BUSSINESS_PARENT)
private String businessPrimaryType;
/**
* 业务类型二级分类
*/
@ExcelProperty(value ="业务类型二级分类")
@ExcelAttribute(name = "业务类型二级分类", isDataId = true,dataType = ExcelAttributeConstants.CUSTOMER_BUSSINESS_TYPE)
private String businessSecondType;
/**
* 业务类型三级分类
*/
@ExcelProperty(value ="业务类型三级分类")
@ExcelAttribute(name = "业务类型三级分类", isDataId = true,dataType = ExcelAttributeConstants.CUSTOMER_BUSSINESS_SUB_TYPE)
private String businessThirdType;
/**
......@@ -381,7 +384,7 @@ public class EmployeeProjectExportVO{
* 项目档案来源(字典:4人员档案新建、5项目档案新建、1社保/公积金、3商险、2薪酬)
*/
@ExcelProperty(value ="项目档案来源")
@ExcelAttribute(name = "项目档案来源", readConverterExp = "1=社保/公积金,2=薪酬,3=商险,4=人员档案新建,5=项目档案新建")
@ExcelAttribute(name = "项目档案来源", isDataId = true,dataType = ExcelAttributeConstants.PROJECT_EMP_SOURCE)
private String projectSource;
/**
......@@ -404,5 +407,26 @@ public class EmployeeProjectExportVO{
@DateTimeFormat("yyyy-MM-dd")
private LocalDateTime createTime;
/**
* 社保-省
*/
@ExcelAttribute(name ="社保所在省")
@ExcelProperty(value ="社保所在省")
private String socialProvince;
/**
* 社保-市
*/
@ExcelAttribute(name ="社保所在市")
@ExcelProperty(value ="社保所在市")
private String socialCity;
/**
* 社保-县
*/
@ExcelAttribute(name ="社保所在县")
@ExcelProperty(value ="社保所在县")
private String socialTown;
private List<String> idList;
}
......@@ -65,7 +65,7 @@ public class EmployeeXProjectVO extends RowIndex implements Serializable {
*/
@ExcelProperty(value ="减项原因")
@NotNull(message = "减项原因不能为空")
@ExcelAttribute(name = "减项原因",isNotEmpty = true, errorInfo = "减项原因不能为空",maxLength = 100)
@ExcelAttribute(name = "减项原因",isNotEmpty = true, errorInfo = "减项原因不能为空",maxLength = 100,isDataId = true,dataType = "reduce_project_reason")
private String leaveReason;
/**
......
......@@ -30,6 +30,8 @@ public class EmployeeConstants {
public static final String FILE_CITY_MUST = "更新档案县,档案市必填";
public static final String DEPT_NO_ERROR = "项目编码错误";
public static final String DEPT_NO_EXIST = "根据项目编码未找到项目";
public static final String CHECK_ERROR = "校验服务错误,请联系管理员!";
public static final String CHECK_NO_RESPONSE = "校验服务器未返回,请联系管理员!";
/**
* 无数据可更新
......
......@@ -19,13 +19,10 @@ package com.yifu.cloud.plus.v1.yifu.archives.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.plugin.excel.annotation.RequestExcel;
import com.pig4cloud.plugin.excel.vo.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysDataAuth;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo;
import com.yifu.cloud.plus.v1.yifu.archives.service.TEmployeeInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeLeaveVO;
import com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeVO;
import com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorMessageVO;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
......@@ -46,13 +43,11 @@ import org.springframework.cache.Cache;
import org.springframework.cache.CacheManager;
import org.springframework.cache.support.SimpleValueWrapper;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.InputStream;
import java.util.List;
......
......@@ -181,17 +181,17 @@ public class TEmployeeProjectController {
/**
* 减项
* @param excelVOList
* @param bindingResult
* @param file
* @Author huyc
* @Date 2022-06-20
*/
@SneakyThrows
@Operation(summary = "批量减项", description = "批量减项")
@SysLog("批量减项" )
@PostMapping("/batchDeleteEmpPro")
@PreAuthorize("@pms.hasPermission('archives_temployeeproject_batchdelempproinfo')" )
public R<List<ErrorMessage>> batchDeleteEmpPro(@RequestExcel List<EmployeeXProjectVO> excelVOList, BindingResult bindingResult) {
return tEmployeeProjectService.batchDeleteEmpPro(excelVOList,bindingResult);
public R<List<ErrorMessage>> batchDeleteEmpPro(@RequestBody MultipartFile file) {
return tEmployeeProjectService.batchDeleteEmpPro(file.getInputStream());
}
/**
......
......@@ -103,7 +103,7 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
* @Date: 2022/6/21 10:30
* @return: R
**/
R<List<ErrorMessage>> batchDeleteEmpPro(List<EmployeeXProjectVO> list, BindingResult bindingResult);
R<List<ErrorMessage>> batchDeleteEmpPro(InputStream inputStream);
/**
* @param inputStream
......
......@@ -45,10 +45,7 @@ import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import java.io.*;
import java.util.Arrays;
import java.util.Enumeration;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
......@@ -158,7 +155,7 @@ public class TElecEmployeeInfoServiceImpl extends ServiceImpl<TElecEmployeeInfoM
}else {
dictMap = dictR.getData();
elecTypeMapData = dictMap.get("data");
elecTypeMap = elecTypeMapData.get("elec_archives_type");
elecTypeMap = elecTypeMapData.get("literature_types");
}
// 判断源文件是否存在
if (!srcFile.exists()) {
......@@ -170,6 +167,8 @@ public class TElecEmployeeInfoServiceImpl extends ServiceImpl<TElecEmployeeInfoM
zipFile = new ZipFile(srcFile, CharsetUtil.CHARSET_GBK);
Enumeration<?> entries = zipFile.entries();
Map<String,String> insMap = new HashMap<>();
Map<String,String> map = new HashMap<>();
while (entries.hasMoreElements()) {
ZipEntry entry = (ZipEntry) entries.nextElement();
//添加进filesName
......@@ -197,7 +196,9 @@ public class TElecEmployeeInfoServiceImpl extends ServiceImpl<TElecEmployeeInfoM
fos.write(buf, 0, len);
}
if (empInfo.length() > empInfo.lastIndexOf("/") + 1) {
TElecEmployeeInfo tElecEmployeeInfo = new TElecEmployeeInfo();
List<String> list = new ArrayList<>();
if (empInfo.length() > empInfo.lastIndexOf("/") + 1) {
String idCard = empInfo.substring(0,empInfo.indexOf("/"));
String dataType = empInfo.substring(empInfo.indexOf("/") +1,empInfo.lastIndexOf("/"));
String empName = "";
......@@ -209,26 +210,32 @@ public class TElecEmployeeInfoServiceImpl extends ServiceImpl<TElecEmployeeInfoM
}else {
return R.failed("未找到身份证对应的档案信息,身份证号:" + idCard);
}
TElecEmployeeInfo tElecEmployeeInfo = new TElecEmployeeInfo();
tElecEmployeeInfo.setEmpIdcard(idCard);
tElecEmployeeInfo.setEmpName(empName);
if (Common.isNotNull(elecTypeMap)) {
tElecEmployeeInfo.setDataType(elecTypeMap.get(dataType));
if (Common.isNotNull(elecTypeMap.get(dataType))) {
tElecEmployeeInfo.setDataType(elecTypeMap.get(dataType));
} else {
return R.failed("资料类型错误:" + dataType);
}
}
this.save(tElecEmployeeInfo);
//文件上传并保存附件信息
R<FileVo> fileVo =fileUploadService.uploadImg(fileCovertMultipartFile(targetFile),"", CommonConstants.EIGHT_INT,"");
String id = fileVo.getData().getUid();
attaInfoMapper.updateDomainId(tElecEmployeeInfo.getId(), Arrays.asList(id));
String id = insMap.get(idCard + CommonConstants.DOWN_LINE_STRING + dataType);
//if (!elecTypeMap.get(dataType).equals(insMap.get(idCard))) {
if (Common.isEmpty(id)) {
this.save(tElecEmployeeInfo);
insMap.put(idCard + CommonConstants.DOWN_LINE_STRING + dataType, tElecEmployeeInfo.getId());
}
fileUploadService.uploadImg(fileCovertMultipartFile(targetFile),"", CommonConstants.EIGHT_INT,insMap.get(idCard + CommonConstants.DOWN_LINE_STRING + dataType));
}
//解析完成删除本次解析中生成的文件 删除此目录下的所有文件
deleteFolder(destDirPath);
// 关流顺序,先打开的后关闭
fos.close();
is.close();
}
}
//解析完成删除本次解析中生成的文件 删除此目录下的所有文件
deleteFolder(destDirPath);
} catch (Exception e) {
throw new RuntimeException("unzip error from ZipUtils", e);
} finally {
......
......@@ -561,7 +561,9 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
*/
private void saveData() {
log.info("{}条数据,开始存储数据库!", cachedDataList.size());
updateContract(cachedDataList, errorMessageList);
if (!cachedDataList.isEmpty()) {
updateContract(cachedDataList, errorMessageList);
}
log.info("存储数据库成功!");
}
}).sheet().doRead();
......@@ -663,7 +665,9 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
*/
private void saveData() {
log.info("{}条数据,开始存储数据库!", cachedDataList.size());
importContract(cachedDataList, errorMessageList);
if (!cachedDataList.isEmpty()) {
importContract(cachedDataList, errorMessageList);
}
log.info("存储数据库成功!");
}
}).sheet().doRead();
......
......@@ -55,10 +55,10 @@ public class DoJointTask {
.eq(TEmployeeProject::getProjectStatus, CommonConstants.ZERO_INT));
if (Common.isNotNull(list)) {
Set<String> empNatrue = list.stream().map(TEmployeeProject::getEmpNatrue).collect(Collectors.toSet());
if (empNatrue.stream().anyMatch(e -> e.equals(CommonConstants.ZERO_STRING))) {
tEmployeeInfo.setEmpNatrue(CommonConstants.ZERO_STRING);
} else if (empNatrue.stream().anyMatch(e -> e.equals(CommonConstants.ONE_STRING))) {
if (empNatrue.stream().anyMatch(e -> e.equals(CommonConstants.ONE_STRING))) {
tEmployeeInfo.setEmpNatrue(CommonConstants.ONE_STRING);
} else if (empNatrue.stream().anyMatch(e -> e.equals(CommonConstants.ZERO_STRING))) {
tEmployeeInfo.setEmpNatrue(CommonConstants.ZERO_STRING);
} else {
tEmployeeInfo.setEmpNatrue(CommonConstants.TWO_STRING);
}
......
......@@ -65,16 +65,16 @@
AND a.EMP_IDCARD = #{tElecEmployeeInfo.empIdcard}
</if>
<if test="tElecEmployeeInfo.unitName != null and tElecEmployeeInfo.unitName.trim() != ''">
AND b.UNIT_NAME like concat('%',#{tElecEmployeeInfo.unitName},'%')
AND c.UNIT_NAME like concat('%',#{tElecEmployeeInfo.unitName},'%')
</if>
<if test="tElecEmployeeInfo.deptName != null and tElecEmployeeInfo.deptName.trim() != ''">
AND b.DEPT_NAME like concat('%',#{tElecEmployeeInfo.deptName},'%')
AND c.DEPT_NAME like concat('%',#{tElecEmployeeInfo.deptName},'%')
</if>
<if test="tElecEmployeeInfo.empNo != null and tElecEmployeeInfo.empNo.trim() != ''">
AND b.EMP_NO = #{tElecEmployeeInfo.empNo}
AND c.EMP_NO = #{tElecEmployeeInfo.empNo}
</if>
<if test="tElecEmployeeInfo.deptNo != null and tElecEmployeeInfo.deptNo.trim() != ''">
AND b.DEPT_NO like concat('%',#{tElecEmployeeInfo.deptNo},'%')
AND c.DEPT_NO like concat('%',#{tElecEmployeeInfo.deptNo},'%')
</if>
<if test="tElecEmployeeInfo.dataType != null and tElecEmployeeInfo.dataType.trim() != ''">
AND a.DATA_TYPE = #{tElecEmployeeInfo.dataType}
......@@ -100,14 +100,15 @@
<!--tElecEmployeeInfo简单分页查询-->
<select id="getTElecEmployeeInfoPage" resultMap="tElecEmployeeInfoMap">
SELECT
<include refid="Base_Column_List"/>,GROUP_CONCAT(distinct b.DEPT_NAME) as DEPT_NAME,GROUP_CONCAT(distinct b.UNIT_NAME) as UNIT_NAME,GROUP_CONCAT(distinct b.DEPT_NO) as DEPT_NO,GROUP_CONCAT(distinct b.EMP_NO) as EMP_NO
<include refid="Base_Column_List"/>,GROUP_CONCAT(distinct c.DEPT_NAME) as DEPT_NAME,GROUP_CONCAT(distinct c.UNIT_NAME) as UNIT_NAME,GROUP_CONCAT(distinct c.DEPT_NO) as DEPT_NO,GROUP_CONCAT(distinct c.EMP_NO) as EMP_NO
FROM t_elec_employee_info a
left join t_employee_project b on a.EMP_IDCARD = b.EMP_IDCARD
left join t_employee_info b on a.EMP_IDCARD = b.EMP_IDCARD
left join t_employee_project c on a.EMP_IDCARD = c.EMP_IDCARD AND c.DELETE_FLAG = '0' AND c.PROJECT_STATUS = '0'
<where>
1=1 AND a.DELETE_FLAG = '0' AND b.DELETE_FLAG = '0'
1=1 AND a.DELETE_FLAG = '0'
<include refid="tElecEmployeeInfo_where"/>
</where>
GROUP BY a.EMP_IDCARD
GROUP BY a.EMP_IDCARD,a.CREATE_TIME,a.DATA_TYPE
ORDER BY a.CREATE_TIME desc
</select>
</mapper>
......@@ -518,13 +518,6 @@
</if>
</foreach>
</trim>
<trim prefix="EMP_NAME =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.empName!=null">
when ID=#{i.id} then #{i.empName}
</if>
</foreach>
</trim>
<trim prefix="EMP_IDCARD =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.empIdcard!=null">
......@@ -622,7 +615,7 @@
insert into t_employee_project
(ID,EMP_ID,EMP_NATRUE,EMP_NAME,EMP_IDCARD,STATUS,PROJECT_STATUS,EMP_CODE,DEPT_NO,CONTRACT_TYPE,POST,
DEPT_ID,DEPT_NAME,UNIT_ID,UNIT_NAME,UNIT_NO,EMP_NO,TRY_PERIOD,ENJOIN_DATE,BANK_NAME,BANK_NO,BANK_SUB_NAME,
DELETE_FLAG,CREATE_BY,CREATE_NAME,CREATE_TIME,INSURANCE_STATUS,SOCIAL_STATUS,FUND_STATUS)
WORKING_HOURS,PROJECT_SOURCE,DELETE_FLAG,CREATE_BY,CREATE_NAME,CREATE_TIME,INSURANCE_STATUS,SOCIAL_STATUS,FUND_STATUS)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(
......@@ -648,6 +641,8 @@
#{item.bankName,jdbcType=VARCHAR},
#{item.bankNo,jdbcType=VARCHAR},
#{item.bankSubName,jdbcType=VARCHAR},
#{item.workingHours,jdbcType=VARCHAR},
#{item.projectSource,jdbcType=VARCHAR},
#{item.deleteFlag,jdbcType=VARCHAR},
#{item.createBy,jdbcType=VARCHAR},
#{item.createName,jdbcType=VARCHAR},
......
......@@ -38,7 +38,7 @@ public class ChecksUtil {
// 1.调用身份信息校验api
checkIdCardMethod(checkIdCard);
} else {
checkIdCard.setIsTrue(0);
checkIdCard.setIsTrue(CommonConstants.ZERO_INT);
checkIdCard.setReason(ChecksConstants.NACOS_CHECK_CONFIG_ERROR);
}
}
......@@ -173,20 +173,20 @@ public class ChecksUtil {
JsonObject resultJson = jsonObject.get(ChecksConstants.DATA).getAsJsonObject();
String resultStr = getJsonElementValue(resultJson.getAsJsonObject().get(ChecksConstants.RESULT));
if ("01".equals(resultStr)) {
checkIdCard.setIsTrue(1);
checkIdCard.setIsTrue(CommonConstants.ONE_INT);
checkIdCard.setReason("正确");
} else {
checkIdCard.setIsTrue(0);
checkIdCard.setIsTrue(CommonConstants.ZERO_INT);
String remark = getJsonElementValue(resultJson.get(ChecksConstants.REMARK));
checkIdCard.setReason("调用身份信息校验失败,resultStr:" + resultStr + ",msg:" + remark);
}
} else {
// 记录错误日志,正式项目中请换成log打印
checkIdCard.setIsTrue(0);
checkIdCard.setIsTrue(CommonConstants.ZERO_INT);
checkIdCard.setReason("调用身份信息校验失败,code:" + code + ",msg:" + jsonObject.get(ChecksConstants.MESSAGE).getAsString());
}
} else {
checkIdCard.setIsTrue(0);
checkIdCard.setIsTrue(CommonConstants.ZERO_INT);
checkIdCard.setReason(ChecksConstants.NO_DATA_RESULT);
}
}
......
......@@ -233,25 +233,22 @@ public class TCheckIdCardServiceImpl extends ServiceImpl<TCheckIdCardMapper, TCh
if (Common.isEmpty(idCard) || Common.isEmpty(name)){
tCheckIdCard.setIsTrue(CommonConstants.ZERO_INT);
tCheckIdCard.setReason(CommonConstants.PARAM_IS_NOT_EMPTY);
tCheckIdCard.setIsTrue(CommonConstants.ONE_INT);
return tCheckIdCard;
}
// 校验姓名身份证规则
if (!regIdCard(idCard)) {
tCheckIdCard.setIsTrue(0);
tCheckIdCard.setIsTrue(CommonConstants.ZERO_INT);
tCheckIdCard.setReason("身份证格式有误");
tCheckIdCard.setIsTrue(CommonConstants.ONE_INT);
return tCheckIdCard;
} else if (regEmpName(name)) {
tCheckIdCard.setIsTrue(0);
tCheckIdCard.setIsTrue(CommonConstants.ZERO_INT);
tCheckIdCard.setReason("姓名含数字或空格,无法校验");
tCheckIdCard.setIsTrue(CommonConstants.ONE_INT);
return tCheckIdCard;
}
synchronized (this){
TCheckIdCard checkIdCard = baseMapper.selectOne(Wrappers.<TCheckIdCard>query().lambda()
.eq(TCheckIdCard::getIdCard,idCard)
.eq(TCheckIdCard::getIsTrue,CommonConstants.ONE_STRING)
.eq(TCheckIdCard::getIsTrue,CommonConstants.ONE_INT)
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(checkIdCard)){
if (name.equals(checkIdCard.getName())) {
......@@ -268,7 +265,7 @@ public class TCheckIdCardServiceImpl extends ServiceImpl<TCheckIdCardMapper, TCh
if (checkList != null && !checkList.isEmpty()) {
for (TCheckIdCard c : checkList) {
if (idCard.equals(c.getIdCard()) && name.equals(c.getName())) {
tCheckIdCard.setIsTrue(0);
tCheckIdCard.setIsTrue(CommonConstants.ZERO_INT);
tCheckIdCard.setReason(c.getReason());
return tCheckIdCard;
}
......
......@@ -116,7 +116,7 @@ public class TCheckMobileServiceImpl extends ServiceImpl<TCheckMobileMapper, TCh
public synchronized TCheckMobile checkOneMobile(String mobile) {
TCheckMobile returnMobile = new TCheckMobile();
returnMobile.setMobile(mobile);
returnMobile.setMessage("未找到!");
returnMobile.setMessage("手机号不可用!");
returnMobile.setStatus(CommonConstants.ZERO_STRING);
if (Common.isNotNull(mobile)) {
//1.先从本地库获取正常数据
......
......@@ -31,7 +31,14 @@ public class ExcelAttributeConstants {
// 减档原因
public static final String DOWNSHIFT_REASON = "downshift_reason";
// 业务类型一级分类
public static final String CUSTOMER_BUSSINESS_PARENT = "customer_business_parent";
// 业务类型二级分类
public static final String CUSTOMER_BUSSINESS_TYPE = "customer_business_type";
// 业务类型三级分类
public static final String CUSTOMER_BUSSINESS_SUB_TYPE = "customer_business_sub_type";
//员工合同类型
......@@ -107,4 +114,6 @@ public class ExcelAttributeConstants {
public static final String FAMILY_RELATION = "family_relation";
// 工作类型---工具履历
public static final String WORKINFO_TYPE = "workinfo_type";
// 项目档案来源
public static final String PROJECT_EMP_SOURCE = "project_emp_source";
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.entity;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 公积金政策对应的缴费比例表
*
* @author hgw
* @date 2022-07-11 18:13:22
*/
@Data
@TableName("sys_pay_proportion")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "公积金政策对应的缴费比例表")
public class SysPayProportion extends BaseEntity {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@ExcelAttribute(name = "id" )
@Schema(description ="id")
@ExcelProperty("id")
private String id;
/**
* 住房公积金公司缴纳比例
*/
@ExcelAttribute(name = "住房公积金公司缴纳比例" )
@Schema(description ="住房公积金公司缴纳比例")
@ExcelProperty("住房公积金公司缴纳比例")
private Double companyPro;
/**
* 公积金住房个人缴纳比例
*/
@ExcelAttribute(name = "公积金住房个人缴纳比例" )
@Schema(description ="公积金住房个人缴纳比例")
@ExcelProperty("公积金住房个人缴纳比例")
private Double personalPro;
/**
* 关联公积金政策基数设置表ID
*/
@ExcelAttribute(name = "关联公积金政策基数设置表ID" )
@Schema(description ="关联公积金政策基数设置表ID")
@ExcelProperty("关联公积金政策基数设置表ID")
private String sysBaseSetId;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.entity;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 社保变更记录表
*
* @author hgw
* @date 2022-07-11 18:13:21
*/
@Data
@TableName("t_social_log")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "社保变更记录表")
public class TSocialLog extends BaseEntity {
/**
* 主键
*/
@TableId(type = IdType.ASSIGN_ID)
@ExcelAttribute(name = "主键")
@Schema(description = "主键")
@ExcelProperty("主键")
private String id;
/**
* 类型:1社保基数配置;2公积金基数配置
*/
@ExcelAttribute(name = "类型:1社保基数配置;2公积金基数配置")
@Schema(description = "类型:1社保基数配置;2公积金基数配置")
@ExcelProperty("类型:1社保基数配置;2公积金基数配置")
private Integer type;
/**
* 主表id
*/
@ExcelAttribute(name = "主表id")
@Schema(description = "主表id")
@ExcelProperty("主表id")
private String mainId;
/**
* 原来的信息
*/
@ExcelAttribute(name = "原来的信息")
@Schema(description = "原来的信息")
@ExcelProperty("原来的信息")
private String oldInfo;
/**
* 新的信息
*/
@ExcelAttribute(name = "新的信息")
@Schema(description = "新的信息")
@ExcelProperty("新的信息")
private String newInfo;
/**
* 差异的信息(属性名称,逗号隔开)
*/
@ExcelAttribute(name = "差异的信息(属性名称,逗号隔开)")
@Schema(description = "差异的信息(属性名称,逗号隔开)")
@ExcelProperty("差异的信息(属性名称,逗号隔开)")
private String differenceInfo;
}
......@@ -27,6 +27,11 @@
<groupId>com.yifu.cloud.plus.v1</groupId>
<artifactId>yifu-common-seata</artifactId>
</dependency>
<dependency>
<groupId>com.yifu.cloud.plus.v1</groupId>
<artifactId>yifu-social-api</artifactId>
<version>1.0.0</version>
</dependency>
<!--必备: 依赖api模块-->
<dependency>
<groupId>com.yifu.cloud.plus.v1</groupId>
......@@ -67,7 +72,7 @@
<version>5.8.0</version>
<artifactId>hutool-all</artifactId>
</dependency>
</dependencies>
</dependencies>
<build>
<plugins>
......
package com.yifu.cloud.plus.v1.yifu.demo.controller;
\ No newline at end of file
package com.yifu.cloud.plus.v1.yifu.demo.service;
\ No newline at end of file
package com.yifu.cloud.plus.v1.yifu.demo;
package com.yifu.cloud.plus.v1.yifu.social;
import com.yifu.cloud.plus.v1.yifu.common.security.annotation.EnableYifuResourceServer;
import org.springframework.boot.SpringApplication;
......
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysBaseSetInfo;
import com.yifu.cloud.plus.v1.yifu.social.service.SysBaseSetInfoService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 基数设置表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/sysbasesetinfo")
@Tag(name = "基数设置表管理")
@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
public class SysBaseSetInfoController {
private final SysBaseSetInfoService sysBaseSetInfoService;
/**
* 简单分页查询
*
* @param page 分页对象
* @param sysBaseSetInfo 基数设置表
* @return
*/
@Operation(summary = "分页查询", description = "分页查询")
@GetMapping("/page")
public R<IPage<SysBaseSetInfo>> getSysBaseSetInfoPage(Page<SysBaseSetInfo> page, SysBaseSetInfo sysBaseSetInfo) {
return new R<>(sysBaseSetInfoService.getSysBaseSetInfoPage(page, sysBaseSetInfo));
}
/**
* 不分页查询
*
* @param sysBaseSetInfo 基数设置表
* @return
*/
@Operation(summary = "不分页查询", description = "不分页查询")
@PostMapping("/noPage")
//@PreAuthorize("@pms.hasPermission('social_sysbasesetinfo_get')" )
public R<List<SysBaseSetInfo>> getSysBaseSetInfoNoPage(@RequestBody SysBaseSetInfo sysBaseSetInfo) {
return R.ok(sysBaseSetInfoService.list(Wrappers.query(sysBaseSetInfo).orderByDesc(CommonConstants.CREATE_TIME)));
}
/**
* 通过id查询基数设置表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id查询", description = "通过id查询:hasPermission('social_sysbasesetinfo_get')")
@GetMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_sysbasesetinfo_get')")
public R<SysBaseSetInfo> getById(@PathVariable("id") String id) {
return R.ok(sysBaseSetInfoService.getById(id));
}
/**
* 新增基数设置表
*
* @param sysBaseSetInfo 基数设置表
* @return R
*/
@Operation(summary = "新增基数设置表", description = "新增基数设置表:hasPermission('social_sysbasesetinfo_add')")
@SysLog("新增基数设置表")
@PostMapping
@PreAuthorize("@pms.hasPermission('social_sysbasesetinfo_add')")
public R<Boolean> save(@RequestBody SysBaseSetInfo sysBaseSetInfo) {
return R.ok(sysBaseSetInfoService.save(sysBaseSetInfo));
}
/**
* 修改基数设置表
*
* @param sysBaseSetInfo 基数设置表
* @return R
*/
@Operation(summary = "修改基数设置表", description = "修改基数设置表:hasPermission('social_sysbasesetinfo_edit')")
@SysLog("修改基数设置表")
@PutMapping
@PreAuthorize("@pms.hasPermission('social_sysbasesetinfo_edit')")
public R<Boolean> updateById(@RequestBody SysBaseSetInfo sysBaseSetInfo) {
return R.ok(sysBaseSetInfoService.updateById(sysBaseSetInfo));
}
/**
* 通过id删除基数设置表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id删除基数设置表", description = "通过id删除基数设置表:hasPermission('social_sysbasesetinfo_del')")
@SysLog("通过id删除基数设置表")
@DeleteMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_sysbasesetinfo_del')")
public R<Boolean> removeById(@PathVariable String id) {
return R.ok(sysBaseSetInfoService.removeById(id));
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysPayProportion;
import com.yifu.cloud.plus.v1.yifu.social.service.SysPayProportionService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 公积金政策对应的缴费比例表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/syspayproportion")
@Tag(name = "公积金政策对应的缴费比例表管理")
@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
public class SysPayProportionController {
private final SysPayProportionService sysPayProportionService;
/**
* 简单分页查询
*
* @param page 分页对象
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return
*/
@Operation(summary = "分页查询", description = "分页查询")
@GetMapping("/page")
public R<IPage<SysPayProportion>> getSysPayProportionPage(Page<SysPayProportion> page, SysPayProportion sysPayProportion) {
return new R<>(sysPayProportionService.getSysPayProportionPage(page, sysPayProportion));
}
/**
* 不分页查询
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return
*/
@Operation(summary = "不分页查询", description = "不分页查询")
@PostMapping("/noPage")
//@PreAuthorize("@pms.hasPermission('social_syspayproportion_get')" )
public R<List<SysPayProportion>> getSysPayProportionNoPage(@RequestBody SysPayProportion sysPayProportion) {
return R.ok(sysPayProportionService.list(Wrappers.query(sysPayProportion).orderByDesc(CommonConstants.CREATE_TIME)));
}
/**
* 通过id查询公积金政策对应的缴费比例表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id查询", description = "通过id查询:hasPermission('social_syspayproportion_get')")
@GetMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_syspayproportion_get')")
public R<SysPayProportion> getById(@PathVariable("id") String id) {
return R.ok(sysPayProportionService.getById(id));
}
/**
* 新增公积金政策对应的缴费比例表
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return R
*/
@Operation(summary = "新增公积金政策对应的缴费比例表", description = "新增公积金政策对应的缴费比例表:hasPermission('social_syspayproportion_add')")
@SysLog("新增公积金政策对应的缴费比例表")
@PostMapping
@PreAuthorize("@pms.hasPermission('social_syspayproportion_add')")
public R<Boolean> save(@RequestBody SysPayProportion sysPayProportion) {
return R.ok(sysPayProportionService.save(sysPayProportion));
}
/**
* 修改公积金政策对应的缴费比例表
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return R
*/
@Operation(summary = "修改公积金政策对应的缴费比例表", description = "修改公积金政策对应的缴费比例表:hasPermission('social_syspayproportion_edit')")
@SysLog("修改公积金政策对应的缴费比例表")
@PutMapping
@PreAuthorize("@pms.hasPermission('social_syspayproportion_edit')")
public R<Boolean> updateById(@RequestBody SysPayProportion sysPayProportion) {
return R.ok(sysPayProportionService.updateById(sysPayProportion));
}
/**
* 通过id删除公积金政策对应的缴费比例表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id删除公积金政策对应的缴费比例表", description = "通过id删除公积金政策对应的缴费比例表:hasPermission('social_syspayproportion_del')")
@SysLog("通过id删除公积金政策对应的缴费比例表")
@DeleteMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_syspayproportion_del')")
public R<Boolean> removeById(@PathVariable String id) {
return R.ok(sysPayProportionService.removeById(id));
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialLog;
import com.yifu.cloud.plus.v1.yifu.social.service.TSocialLogService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 社保变更记录表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/tsociallog")
@Tag(name = "社保变更记录表管理")
@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
public class TSocialLogController {
private final TSocialLogService tSocialLogService;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tSocialLog 社保变更记录表
* @return
*/
@Operation(summary = "分页查询", description = "分页查询")
@GetMapping("/page")
public R<IPage<TSocialLog>> getTSocialLogPage(Page<TSocialLog> page, TSocialLog tSocialLog) {
return new R<>(tSocialLogService.getTSocialLogPage(page, tSocialLog));
}
/**
* 不分页查询
*
* @param tSocialLog 社保变更记录表
* @return
*/
@Operation(summary = "不分页查询", description = "不分页查询")
@PostMapping("/noPage")
//@PreAuthorize("@pms.hasPermission('social_tsociallog_get')" )
public R<List<TSocialLog>> getTSocialLogNoPage(@RequestBody TSocialLog tSocialLog) {
return R.ok(tSocialLogService.list(Wrappers.query(tSocialLog).orderByDesc(CommonConstants.CREATE_TIME)));
}
/**
* 通过id查询社保变更记录表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id查询", description = "通过id查询:hasPermission('social_tsociallog_get')")
@GetMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_tsociallog_get')")
public R<TSocialLog> getById(@PathVariable("id") String id) {
return R.ok(tSocialLogService.getById(id));
}
/**
* 新增社保变更记录表
*
* @param tSocialLog 社保变更记录表
* @return R
*/
@Operation(summary = "新增社保变更记录表", description = "新增社保变更记录表:hasPermission('social_tsociallog_add')")
@SysLog("新增社保变更记录表")
@PostMapping
@PreAuthorize("@pms.hasPermission('social_tsociallog_add')")
public R<Boolean> save(@RequestBody TSocialLog tSocialLog) {
return R.ok(tSocialLogService.save(tSocialLog));
}
/**
* 修改社保变更记录表
*
* @param tSocialLog 社保变更记录表
* @return R
*/
@Operation(summary = "修改社保变更记录表", description = "修改社保变更记录表:hasPermission('social_tsociallog_edit')")
@SysLog("修改社保变更记录表")
@PutMapping
@PreAuthorize("@pms.hasPermission('social_tsociallog_edit')")
public R<Boolean> updateById(@RequestBody TSocialLog tSocialLog) {
return R.ok(tSocialLogService.updateById(tSocialLog));
}
/**
* 通过id删除社保变更记录表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id删除社保变更记录表", description = "通过id删除社保变更记录表:hasPermission('social_tsociallog_del')")
@SysLog("通过id删除社保变更记录表")
@DeleteMapping("/{id}")
@PreAuthorize("@pms.hasPermission('social_tsociallog_del')")
public R<Boolean> removeById(@PathVariable String id) {
return R.ok(tSocialLogService.removeById(id));
}
}
package com.yifu.cloud.plus.v1.yifu.social.controller;
\ No newline at end of file
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysBaseSetInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 基数设置表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Mapper
public interface SysBaseSetInfoMapper extends BaseMapper<SysBaseSetInfo> {
/**
* 基数设置表简单分页查询
*
* @param sysBaseSetInfo 基数设置表
* @return
*/
IPage<SysBaseSetInfo> getSysBaseSetInfoPage(Page<SysBaseSetInfo> page, @Param("sysBaseSetInfo") SysBaseSetInfo sysBaseSetInfo);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysPayProportion;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 公积金政策对应的缴费比例表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Mapper
public interface SysPayProportionMapper extends BaseMapper<SysPayProportion> {
/**
* 公积金政策对应的缴费比例表简单分页查询
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return
*/
IPage<SysPayProportion> getSysPayProportionPage(Page<SysPayProportion> page, @Param("sysPayProportion") SysPayProportion sysPayProportion);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialLog;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 社保变更记录表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Mapper
public interface TSocialLogMapper extends BaseMapper<TSocialLog> {
/**
* 社保变更记录表简单分页查询
*
* @param tSocialLog 社保变更记录表
* @return
*/
IPage<TSocialLog> getTSocialLogPage(Page<TSocialLog> page, @Param("tSocialLog") TSocialLog tSocialLog);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysBaseSetInfo;
/**
* 基数设置表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
public interface SysBaseSetInfoService extends IService<SysBaseSetInfo> {
/**
* 基数设置表简单分页查询
*
* @param sysBaseSetInfo 基数设置表
* @return
*/
IPage<SysBaseSetInfo> getSysBaseSetInfoPage(Page<SysBaseSetInfo> page, SysBaseSetInfo sysBaseSetInfo);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysPayProportion;
/**
* 公积金政策对应的缴费比例表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
public interface SysPayProportionService extends IService<SysPayProportion> {
/**
* 公积金政策对应的缴费比例表简单分页查询
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return
*/
IPage<SysPayProportion> getSysPayProportionPage(Page<SysPayProportion> page, SysPayProportion sysPayProportion);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialLog;
/**
* 社保变更记录表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
public interface TSocialLogService extends IService<TSocialLog> {
/**
* 社保变更记录表简单分页查询
*
* @param tSocialLog 社保变更记录表
* @return
*/
IPage<TSocialLog> getTSocialLogPage(Page<TSocialLog> page, TSocialLog tSocialLog);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysBaseSetInfo;
import com.yifu.cloud.plus.v1.yifu.social.mapper.SysBaseSetInfoMapper;
import com.yifu.cloud.plus.v1.yifu.social.service.SysBaseSetInfoService;
import org.springframework.stereotype.Service;
/**
* 基数设置表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Service
public class SysBaseSetInfoServiceImpl extends ServiceImpl<SysBaseSetInfoMapper, SysBaseSetInfo> implements SysBaseSetInfoService {
/**
* 基数设置表简单分页查询
*
* @param sysBaseSetInfo 基数设置表
* @return
*/
@Override
public IPage<SysBaseSetInfo> getSysBaseSetInfoPage(Page<SysBaseSetInfo> page, SysBaseSetInfo sysBaseSetInfo) {
return baseMapper.getSysBaseSetInfoPage(page, sysBaseSetInfo);
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.social.entity.SysPayProportion;
import com.yifu.cloud.plus.v1.yifu.social.mapper.SysPayProportionMapper;
import com.yifu.cloud.plus.v1.yifu.social.service.SysPayProportionService;
import org.springframework.stereotype.Service;
/**
* 公积金政策对应的缴费比例表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Service
public class SysPayProportionServiceImpl extends ServiceImpl<SysPayProportionMapper, SysPayProportion> implements SysPayProportionService {
/**
* 公积金政策对应的缴费比例表简单分页查询
*
* @param sysPayProportion 公积金政策对应的缴费比例表
* @return
*/
@Override
public IPage<SysPayProportion> getSysPayProportionPage(Page<SysPayProportion> page, SysPayProportion sysPayProportion) {
return baseMapper.getSysPayProportionPage(page, sysPayProportion);
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.social.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialLog;
import com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialLogMapper;
import com.yifu.cloud.plus.v1.yifu.social.service.TSocialLogService;
import org.springframework.stereotype.Service;
/**
* 社保变更记录表
*
* @author hgw
* @date 2022-07-11 18:21:23
*/
@Service
public class TSocialLogServiceImpl extends ServiceImpl<TSocialLogMapper, TSocialLog> implements TSocialLogService {
/**
* 社保变更记录表简单分页查询
*
* @param tSocialLog 社保变更记录表
* @return
*/
@Override
public IPage<TSocialLog> getTSocialLogPage(Page<TSocialLog> page, TSocialLog tSocialLog) {
return baseMapper.getTSocialLogPage(page, tSocialLog);
}
}
package com.yifu.cloud.plus.v1.yifu.social.service;
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!--
~
~ Copyright (c) 2018-2025, lengleng All rights reserved.
~
~ Redistribution and use in source and binary forms, with or without
~ modification, are permitted provided that the following conditions are met:
~
~ Redistributions of source code must retain the above copyright notice,
~ this list of conditions and the following disclaimer.
~ Redistributions in binary form must reproduce the above copyright
~ notice, this list of conditions and the following disclaimer in the
~ documentation and/or other materials provided with the distribution.
~ Neither the name of the yifu4cloud.com developer nor the names of its
~ contributors may be used to endorse or promote products derived from
~ this software without specific prior written permission.
~ Author: lengleng (wangiegie@gmail.com)
~
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yifu.cloud.plus.v1.yifu.social.mapper.SysPayProportionMapper">
<resultMap id="sysPayProportionMap" type="com.yifu.cloud.plus.v1.yifu.social.entity.SysPayProportion">
<id property="id" column="ID"/>
<result property="companyPro" column="COMPANY_PRO"/>
<result property="personalPro" column="PERSONAL_PRO"/>
<result property="sysBaseSetId" column="SYS_BASE_SET_ID"/>
</resultMap>
<sql id="Base_Column_List">
a
.
ID
,
a.COMPANY_PRO,
a.PERSONAL_PRO,
a.SYS_BASE_SET_ID
</sql>
<sql id="sysPayProportion_where">
<if test="sysPayProportion != null">
<if test="sysPayProportion.id != null and sysPayProportion.id.trim() != ''">
AND a.ID = #{sysPayProportion.id}
</if>
<if test="sysPayProportion.companyPro != null">
AND a.COMPANY_PRO = #{sysPayProportion.companyPro}
</if>
<if test="sysPayProportion.personalPro != null">
AND a.PERSONAL_PRO = #{sysPayProportion.personalPro}
</if>
<if test="sysPayProportion.sysBaseSetId != null and sysPayProportion.sysBaseSetId.trim() != ''">
AND a.SYS_BASE_SET_ID = #{sysPayProportion.sysBaseSetId}
</if>
</if>
</sql>
<!--sysPayProportion简单分页查询-->
<select id="getSysPayProportionPage" resultMap="sysPayProportionMap">
SELECT
<include refid="Base_Column_List"/>
FROM sys_pay_proportion a
<where>
1=1
<include refid="sysPayProportion_where"/>
</where>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!--
~
~ Copyright (c) 2018-2025, lengleng All rights reserved.
~
~ Redistribution and use in source and binary forms, with or without
~ modification, are permitted provided that the following conditions are met:
~
~ Redistributions of source code must retain the above copyright notice,
~ this list of conditions and the following disclaimer.
~ Redistributions in binary form must reproduce the above copyright
~ notice, this list of conditions and the following disclaimer in the
~ documentation and/or other materials provided with the distribution.
~ Neither the name of the yifu4cloud.com developer nor the names of its
~ contributors may be used to endorse or promote products derived from
~ this software without specific prior written permission.
~ Author: lengleng (wangiegie@gmail.com)
~
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialLogMapper">
<resultMap id="tSocialLogMap" type="com.yifu.cloud.plus.v1.yifu.social.entity.TSocialLog">
<id property="id" column="ID"/>
<result property="type" column="TYPE"/>
<result property="mainId" column="MAIN_ID"/>
<result property="createBy" column="CREATE_BY"/>
<result property="createName" column="CREATE_NAME"/>
<result property="createTime" column="CREATE_TIME"/>
<result property="updateBy" column="UPDATE_BY"/>
<result property="updateTime" column="UPDATE_TIME"/>
<result property="oldInfo" column="OLD_INFO"/>
<result property="newInfo" column="NEW_INFO"/>
<result property="differenceInfo" column="DIFFERENCE_INFO"/>
</resultMap>
<sql id="Base_Column_List">
a
.
ID
,
a.TYPE,
a.MAIN_ID,
a.CREATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_BY,
a.UPDATE_TIME,
a.OLD_INFO,
a.NEW_INFO,
a.DIFFERENCE_INFO
</sql>
<sql id="tSocialLog_where">
<if test="tSocialLog != null">
<if test="tSocialLog.id != null and tSocialLog.id.trim() != ''">
AND a.ID = #{tSocialLog.id}
</if>
<if test="tSocialLog.type != null">
AND a.TYPE = #{tSocialLog.type}
</if>
<if test="tSocialLog.mainId != null and tSocialLog.mainId.trim() != ''">
AND a.MAIN_ID = #{tSocialLog.mainId}
</if>
<if test="tSocialLog.createBy != null and tSocialLog.createBy.trim() != ''">
AND a.CREATE_BY = #{tSocialLog.createBy}
</if>
<if test="tSocialLog.createName != null and tSocialLog.createName.trim() != ''">
AND a.CREATE_NAME = #{tSocialLog.createName}
</if>
<if test="tSocialLog.createTime != null">
AND a.CREATE_TIME = #{tSocialLog.createTime}
</if>
<if test="tSocialLog.updateBy != null and tSocialLog.updateBy.trim() != ''">
AND a.UPDATE_BY = #{tSocialLog.updateBy}
</if>
<if test="tSocialLog.updateTime != null">
AND a.UPDATE_TIME = #{tSocialLog.updateTime}
</if>
<if test="tSocialLog.oldInfo != null and tSocialLog.oldInfo.trim() != ''">
AND a.OLD_INFO = #{tSocialLog.oldInfo}
</if>
<if test="tSocialLog.newInfo != null and tSocialLog.newInfo.trim() != ''">
AND a.NEW_INFO = #{tSocialLog.newInfo}
</if>
<if test="tSocialLog.differenceInfo != null and tSocialLog.differenceInfo.trim() != ''">
AND a.DIFFERENCE_INFO = #{tSocialLog.differenceInfo}
</if>
</if>
</sql>
<!--tSocialLog简单分页查询-->
<select id="getTSocialLogPage" resultMap="tSocialLogMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_social_log a
<where>
1=1
<include refid="tSocialLog_where"/>
</where>
order by a.CREATE_TIME desc
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment