diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java index 251e04d..92257ca 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.toolkit.ReflectionKit; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.toolkit.Db; import com.ruoyi.common.utils.BeanCopyUtils; +import org.apache.ibatis.annotations.Select; import org.apache.ibatis.logging.Log; import org.apache.ibatis.logging.LogFactory; @@ -188,5 +189,14 @@ public interface BaseMapperPlus extends BaseMapper { voPage.setRecords(BeanCopyUtils.copyList(pageData.getRecords(), voClass)); return (P) voPage; } + /** + * 说明:根据年月删除所有的关联表数据 + * + * @return 成功标志 + */ + @Select("DELETE FROM pay_butie_emplyee WHERE date = #{thisMonth}") + void deleteSgrButieEmplyeeByDate(String month); + @Select("SELECT COUNT(*) FROM pay_butie_emplyee WHERE date = #{month}") + Integer getLatestDate(String month); } diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/PayButieEmplyeeController.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/PayButieEmplyeeController.java index 82d4edc..e6d72a0 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/PayButieEmplyeeController.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/PayButieEmplyeeController.java @@ -1,9 +1,21 @@ package com.ruoyi.pay.controller; -import java.util.List; -import java.util.Arrays; +import java.math.BigDecimal; +import java.util.*; import java.util.concurrent.TimeUnit; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.json.JSONObject; +import com.ruoyi.pay.domain.PayButie; +import com.ruoyi.pay.domain.PayEmployeeInfo; +import com.ruoyi.pay.domain.bo.PayButieBo; +import com.ruoyi.pay.domain.bo.PayEmployeeInfoBo; +import com.ruoyi.pay.domain.vo.ButieSummaryVo; +import com.ruoyi.pay.domain.vo.PayButieVo; +import com.ruoyi.pay.domain.vo.PayEmployeeInfoVo; +import com.ruoyi.pay.service.IPayButieService; +import com.ruoyi.pay.service.IPayEmployeeInfoService; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.*; @@ -38,6 +50,8 @@ import com.ruoyi.common.core.page.TableDataInfo; public class PayButieEmplyeeController extends BaseController { private final IPayButieEmplyeeService iPayButieEmplyeeService; + private final IPayEmployeeInfoService employeeInfoService; + private final IPayButieService butieService; /** * 查询补贴和员工联系列表 @@ -105,4 +119,73 @@ public class PayButieEmplyeeController extends BaseController { @PathVariable Long[] ids) { return toAjax(iPayButieEmplyeeService.deleteWithValidByIds(Arrays.asList(ids), true)); } + + /** + * 说明:获取员工名称列表,用于工单选择工人 + * + * @return EmployeeInfoVo 列表 + */ + @SaCheckPermission("pay:butieEmplyee:gen") + @Log(title = "月度补贴生成", businessType = BusinessType.INSERT) + @PostMapping("/gen") + public R generateBuTieEmpByMonth(@RequestBody JSONObject object) { + return iPayButieEmplyeeService.generateBuTieEmpByMonth(object.get("month", String.class), object.get("cover", Boolean.class)); + } + + @PostMapping("/check") + public R checkDataExist(@RequestBody JSONObject object) { + return iPayButieEmplyeeService.checkDataExist(object.get("month", String.class)); + } + + + + + /** + * 查询员工补贴列表 + * + */ + @SaCheckPermission("pay:butieEmplyee:list") + @DeleteMapping("/summary") + public TableDataInfo summary(PayButieEmplyeeBo bo, PageQuery pageQuery) { + String date; + if (null==(bo.getDate())) { // 默认查询本月的数据 + date = DateUtil.format(new Date(), "yyyy-MM"); + } else { + date = bo.getDate(); + } + PayEmployeeInfoBo employeeInfo = new PayEmployeeInfoBo(); + employeeInfo.setId(bo.getEmployeeId()); + TableDataInfo payEmployeeTableDataInfo = employeeInfoService.queryPageList(employeeInfo, pageQuery); + List butieSummaryVos = this.buildEmployeeInfo(payEmployeeTableDataInfo.getRows(), date); + return TableDataInfo.build(butieSummaryVos); + } + + private List buildEmployeeInfo(List list, String date) { + List sgrButies = butieService.queryList(new PayButieBo()); + ArrayList summaryVos = new ArrayList<>(); + list.parallelStream().forEachOrdered(emp -> { + ButieSummaryVo butieSummaryVo = new ButieSummaryVo(); + butieSummaryVo.setEmpName(emp.getName()); + butieSummaryVo.setDate(date); + HashMap map = new HashMap<>(); + for (PayButieVo butie : sgrButies) { + PayButieEmplyeeBo query = new PayButieEmplyeeBo(); + query.setEmployeeId(emp.getId()); + query.setButieId(butie.getId()); + query.setDate(date); + List butieEmplyeeVos = iPayButieEmplyeeService.queryList(query); + BigDecimal money =butieEmplyeeVos.get(0).getMoney(); + HashMap inMap = new HashMap<>(); + inMap.put("btid", butie.getId()); + inMap.put("money",money); + map.put(butie.getName(), inMap); + } + butieSummaryVo.setButieMap(map); + butieSummaryVo.setEdit(false); + butieSummaryVo.setEmpId(emp.getId()); + summaryVos.add(butieSummaryVo); + }); + return summaryVos; + } + } diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/PayEmployeeInfo.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/PayEmployeeInfo.java index 418d2aa..f966bef 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/PayEmployeeInfo.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/PayEmployeeInfo.java @@ -42,6 +42,10 @@ public class PayEmployeeInfo extends BaseEntity { * 员工所属部门 */ private Long deptId; + /** + * 部门名称 + */ + private String deptName; /** * 员工姓名 */ diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/bo/PayEmployeeInfoBo.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/bo/PayEmployeeInfoBo.java index 7fedc77..7a81dcc 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/bo/PayEmployeeInfoBo.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/bo/PayEmployeeInfoBo.java @@ -39,7 +39,7 @@ public class PayEmployeeInfoBo extends BaseEntity { /** * 登录用户id */ - @NotNull(message = "登录用户id不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "登录用户id不能为空", groups = { AddGroup.class, EditGroup.class }) private Long userId; /** @@ -48,6 +48,12 @@ public class PayEmployeeInfoBo extends BaseEntity { @NotNull(message = "员工所属部门不能为空", groups = { AddGroup.class, EditGroup.class }) private Long deptId; + /** + * 部门名称 + */ + @NotBlank(message = "部门名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String deptName; + /** * 员工姓名 */ @@ -57,13 +63,13 @@ public class PayEmployeeInfoBo extends BaseEntity { /** * 性别(0:男 1:女) */ - @NotBlank(message = "性别(0:男 1:女)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "性别(0:男 1:女)不能为空", groups = { AddGroup.class, EditGroup.class }) private String sex; /** * 年龄 */ - @NotNull(message = "年龄不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "年龄不能为空", groups = { AddGroup.class, EditGroup.class }) private Long age; /** @@ -75,19 +81,19 @@ public class PayEmployeeInfoBo extends BaseEntity { /** * 身份证号 */ - @NotBlank(message = "身份证号不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "身份证号不能为空", groups = { AddGroup.class, EditGroup.class }) private String idcard; /** * 银行卡号 */ - @NotBlank(message = "银行卡号不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "银行卡号不能为空", groups = { AddGroup.class, EditGroup.class }) private String bankCardNumber; /** * 开户行 */ - @NotBlank(message = "开户行不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "开户行不能为空", groups = { AddGroup.class, EditGroup.class }) private String openingBank; /** @@ -99,19 +105,19 @@ public class PayEmployeeInfoBo extends BaseEntity { /** * 日薪 */ - @NotNull(message = "日薪不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "日薪不能为空", groups = { AddGroup.class, EditGroup.class }) private BigDecimal daySalary; /** * 时薪 */ - @NotNull(message = "时薪不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "时薪不能为空", groups = { AddGroup.class, EditGroup.class }) private BigDecimal hourSalary; /** * 休息类型(0 :周休 1:非周休 2:天休 3:小时 4:包月 5:周二天) */ - @NotBlank(message = "休息类型(0 :周休 1:非周休 2:天休 3:小时 4:包月 5:周二天)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "休息类型(0 :周休 1:非周休 2:天休 3:小时 4:包月 5:周二天)不能为空", groups = { AddGroup.class, EditGroup.class }) private String restType; /** @@ -135,61 +141,61 @@ public class PayEmployeeInfoBo extends BaseEntity { /** * 学历 */ - @NotBlank(message = "学历不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "学历不能为空", groups = { AddGroup.class, EditGroup.class }) private String education; /** * 家庭住址 */ - @NotBlank(message = "家庭住址不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "家庭住址不能为空", groups = { AddGroup.class, EditGroup.class }) private String address; /** * 紧急联系人 */ - @NotBlank(message = "紧急联系人不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "紧急联系人不能为空", groups = { AddGroup.class, EditGroup.class }) private String contact; /** * 紧急联系人电话 */ - @NotBlank(message = "紧急联系人电话不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "紧急联系人电话不能为空", groups = { AddGroup.class, EditGroup.class }) private String contactPhone; /** * 质检(1-是 0-否) */ - @NotNull(message = "质检(1-是 0-否)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "质检(1-是 0-否)不能为空", groups = { AddGroup.class, EditGroup.class }) private Integer zhijian; /** * 业务员(1-是 0-否) */ - @NotNull(message = "业务员(1-是 0-否)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "业务员(1-是 0-否)不能为空", groups = { AddGroup.class, EditGroup.class }) private Integer yewu; /** * 合同补助开始时间 */ - @NotNull(message = "合同补助开始时间不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "合同补助开始时间不能为空", groups = { AddGroup.class, EditGroup.class }) private Date htstime; /** * 合同补助结束时间 */ - @NotNull(message = "合同补助结束时间不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "合同补助结束时间不能为空", groups = { AddGroup.class, EditGroup.class }) private Date htetime; /** * 删除标志(1:删除 0:未删除) */ - @NotNull(message = "删除标志(1:删除 0:未删除)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotNull(message = "删除标志(1:删除 0:未删除)不能为空", groups = { AddGroup.class, EditGroup.class }) private Integer deleted; /** * 备注 */ - @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class }) private String remark; diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/ButieSummaryVo.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/ButieSummaryVo.java new file mode 100644 index 0000000..0a610b0 --- /dev/null +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/ButieSummaryVo.java @@ -0,0 +1,70 @@ +package com.ruoyi.pay.domain.vo; + +import java.util.Map; + +public class ButieSummaryVo { + /** 员工名称 */ + private String empName; + + /** 员工ID */ + private Long empId; + + /** 日期 */ + private String date; + + /** 补贴金额map */ + private Map butieMap; + + /** 是否可编辑 */ + private boolean edit; + + public Long getEmpId() { + return empId; + } + + public void setEmpId(Long empId) { + this.empId = empId; + } + + public boolean isEdit() { + return edit; + } + + public void setEdit(boolean edit) { + this.edit = edit; + } + + public String getEmpName() { + return empName; + } + + public void setEmpName(String empName) { + this.empName = empName; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public Map getButieMap() { + return butieMap; + } + + public void setButieMap(Map butieMap) { + this.butieMap = butieMap; + } + + @Override + public String toString() { + return "ButieSummaryVo{" + + "empName='" + empName + '\'' + + ", date='" + date + '\'' + + ", butieMap=" + butieMap + + ", edit=" + edit + + '}'; + } +} diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/PayEmployeeInfoVo.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/PayEmployeeInfoVo.java index 4139188..97e01af 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/PayEmployeeInfoVo.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/vo/PayEmployeeInfoVo.java @@ -48,6 +48,12 @@ public class PayEmployeeInfoVo { @ExcelProperty(value = "员工所属部门") private Long deptId; + /** + * 部门名称 + */ + @ExcelProperty(value = "部门名称") + private String deptName; + /** * 员工姓名 */ diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/IPayButieEmplyeeService.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/IPayButieEmplyeeService.java index e08ac02..12766a7 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/IPayButieEmplyeeService.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/IPayButieEmplyeeService.java @@ -1,5 +1,6 @@ package com.ruoyi.pay.service; +import com.ruoyi.common.core.domain.R; import com.ruoyi.pay.domain.PayButieEmplyee; import com.ruoyi.pay.domain.vo.PayButieEmplyeeVo; import com.ruoyi.pay.domain.bo.PayButieEmplyeeBo; @@ -46,4 +47,8 @@ public interface IPayButieEmplyeeService { * 校验并批量删除补贴和员工联系信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + R generateBuTieEmpByMonth(String month, Boolean cover); + + R checkDataExist(String month); } diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayButieEmplyeeServiceImpl.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayButieEmplyeeServiceImpl.java index 13ad846..dda7373 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayButieEmplyeeServiceImpl.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayButieEmplyeeServiceImpl.java @@ -1,12 +1,21 @@ package com.ruoyi.pay.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateField; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.domain.PageQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.pay.domain.PayButie; +import com.ruoyi.pay.domain.PayEmployeeInfo; +import com.ruoyi.pay.domain.bo.PayButieBo; +import com.ruoyi.pay.domain.vo.PayButieVo; +import com.ruoyi.pay.domain.vo.PayEmployeeInfoVo; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import com.ruoyi.pay.domain.bo.PayButieEmplyeeBo; @@ -15,9 +24,11 @@ import com.ruoyi.pay.domain.PayButieEmplyee; import com.ruoyi.pay.mapper.PayButieEmplyeeMapper; import com.ruoyi.pay.service.IPayButieEmplyeeService; +import java.math.BigDecimal; import java.util.List; import java.util.Map; import java.util.Collection; +import java.util.Optional; /** * 补贴和员工联系Service业务层处理 @@ -30,6 +41,8 @@ import java.util.Collection; public class PayButieEmplyeeServiceImpl implements IPayButieEmplyeeService { private final PayButieEmplyeeMapper baseMapper; + private final PayButieServiceImpl butieService; + private final PayEmployeeInfoServiceImpl employeeInfoService; /** * 查询补贴和员工联系 @@ -110,4 +123,81 @@ public class PayButieEmplyeeServiceImpl implements IPayButieEmplyeeService { } return baseMapper.deleteBatchIds(ids) > 0; } + + @Override + public R generateBuTieEmpByMonth(String month, Boolean cover) { + if (ObjectUtil.isNull(month)) { + throw new SecurityException("请完善月份信息"); + } + String lastMonth = DateUtil.format(DateUtil.offset(DateUtil.parse(month, "yyyy-MM"), DateField.MONTH, -1).toJdkDate(), "yyyy-MM"); + // 先删除本月数据 + baseMapper.deleteSgrButieEmplyeeByDate(month); + + List butieList = butieService.queryList(null); // 获取补贴列表 + List employeeInfoList = employeeInfoService.queryList(null);// 获取员工列表 + employeeInfoList.forEach(emp -> { + // 首先获取用户上个月份的补贴信息 + PayButieEmplyeeBo butieEmplyee = new PayButieEmplyeeBo(); + butieEmplyee.setDate(lastMonth); + butieEmplyee.setEmployeeId(emp.getId()); + List butieEmplyeeList = this.queryList(butieEmplyee); + if (ObjectUtil.isNotNull(butieEmplyeeList) && butieEmplyeeList.size() > 0) { // 具有某员工的上个月数据 + // 固定项继承, 非固定相为0 + for (PayButieVo butie : butieList) { + Optional first = butieEmplyeeList.stream().filter(btemp -> btemp.getButieId().equals(butie.getId())).findFirst(); + PayButieEmplyee payButieEmplyee = new PayButieEmplyee(); + // PayEmployeeInfo employeeInfo = employeeInfoService.selectSgrEmployeeInfoById(payButieEmplyee.getEmployeeId()); + if (first.isPresent()) { // 如果找到和补贴类型ID相同的项 + payButieEmplyee = BeanUtil.toBean(first.get(),PayButieEmplyee.class); + payButieEmplyee.setId(null); // ID 设置为null + payButieEmplyee.setDate(month); // 本月的年月 + payButieEmplyee.setCreateBy("system"); + payButieEmplyee.setCreateTime(null); + payButieEmplyee.setUpdateBy(null); + payButieEmplyee.setUpdateTime(null); + payButieEmplyee.setRemark(null); + if ("0".equals(butie.getFixed())) { //非固定项金额不继承 + payButieEmplyee.setMoney(BigDecimal.ZERO); + } + // 此处应该在上面是否非固定的判断中进行再判断 + //// 判断是否是合同补助项,如果合同补助项不在时间范围内,继承的金额也设置为0 + //if ("合同补助".equals(sgrButie.getName())) { + // Date date = new Date(); + // if (ObjectUtil.isNull(employeeInfo.getHtstime()) || date.before(employeeInfo.getHtstime()) || date.after(employeeInfo.getHtstime())) { + // sgrButieEmplyee.setMoney(BigDecimal.ZERO); + // } + //} + } else { // 未找到相同项 + payButieEmplyee.setButieId(butie.getId()); + payButieEmplyee.setEmployeeId(emp.getId()); + payButieEmplyee.setDate(month); + payButieEmplyee.setCreateBy("system"); + payButieEmplyee.setMoney(BigDecimal.ZERO); + } + baseMapper.insert(payButieEmplyee); + } + } else { // 没有某员工的上个月数据 + for (PayButieVo butie : butieList) { // 对应生成某员工所有补贴类型的数据项 + PayButieEmplyee PaybutieEmplyee = new PayButieEmplyee(); + PaybutieEmplyee.setButieId(butie.getId()); + PaybutieEmplyee.setEmployeeId(emp.getId()); + PaybutieEmplyee.setMoney(BigDecimal.ZERO); + PaybutieEmplyee.setDate(month); + PaybutieEmplyee.setCreateBy("system"); + baseMapper.insert(PaybutieEmplyee); + } + } + }); + return R.ok(month+"月份数据已生成"); + } + + @Override + public R checkDataExist(String month) { + Integer count = baseMapper.getLatestDate(month); + if (count > 0) { + return R.ok("数据已经存在,是否覆盖?"); + } else { + return this.generateBuTieEmpByMonth(month, true); + } + } } diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayEmployeeInfoServiceImpl.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayEmployeeInfoServiceImpl.java index 60e71cc..23b97c9 100644 --- a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayEmployeeInfoServiceImpl.java +++ b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/PayEmployeeInfoServiceImpl.java @@ -64,6 +64,7 @@ public class PayEmployeeInfoServiceImpl implements IPayEmployeeInfoService { lqw.eq(bo.getTenantId() != null, PayEmployeeInfo::getTenantId, bo.getTenantId()); lqw.eq(bo.getUserId() != null, PayEmployeeInfo::getUserId, bo.getUserId()); lqw.eq(bo.getDeptId() != null, PayEmployeeInfo::getDeptId, bo.getDeptId()); + lqw.like(StringUtils.isNotBlank(bo.getDeptName()), PayEmployeeInfo::getDeptName, bo.getDeptName()); lqw.like(StringUtils.isNotBlank(bo.getName()), PayEmployeeInfo::getName, bo.getName()); lqw.eq(StringUtils.isNotBlank(bo.getSex()), PayEmployeeInfo::getSex, bo.getSex()); lqw.eq(bo.getAge() != null, PayEmployeeInfo::getAge, bo.getAge()); diff --git a/ruoyi-pay/src/main/resources/mapper/pay/PayEmployeeInfoMapper.xml b/ruoyi-pay/src/main/resources/mapper/pay/PayEmployeeInfoMapper.xml index 2f959f4..24c3e4c 100644 --- a/ruoyi-pay/src/main/resources/mapper/pay/PayEmployeeInfoMapper.xml +++ b/ruoyi-pay/src/main/resources/mapper/pay/PayEmployeeInfoMapper.xml @@ -9,6 +9,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" +