commit
This commit is contained in:
parent
09a4124c76
commit
27cbaf2144
@ -8,6 +8,7 @@ import java.lang.management.ManagementFactory;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.*;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@ -184,4 +185,16 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
|
||||
ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault());
|
||||
return Date.from(zdt.toInstant());
|
||||
}
|
||||
|
||||
public static String toString(LocalDate date,String from){
|
||||
// 创建一个DateTimeFormatter实例来定义日期格式
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(from);
|
||||
|
||||
// 使用formatter转换LocalDate到字符串
|
||||
return date.format(formatter);
|
||||
}
|
||||
|
||||
public static String toString(LocalDate date){
|
||||
return toString(date,"yyyy-MM-dd");
|
||||
}
|
||||
}
|
||||
|
@ -4,14 +4,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.pusong.business.domain.PsContractInfo;
|
||||
import com.pusong.business.domain.PsSalary;
|
||||
import com.pusong.business.domain.PsSalaryConfig;
|
||||
import com.pusong.business.domain.vo.PsContractBusinessDetailVo;
|
||||
import com.pusong.business.domain.vo.PsContractBusinessVo;
|
||||
import com.pusong.business.enums.ContractStatusEnum;
|
||||
import com.pusong.business.mapper.PsContractInfoMapper;
|
||||
import com.pusong.business.mapper.PsSalaryConfigMapper;
|
||||
import com.pusong.business.mapper.PsSalaryMapper;
|
||||
import com.pusong.business.service.IPsContractBusinessService;
|
||||
import com.pusong.business.service.impl.PsTaskServiceImpl;
|
||||
import com.pusong.common.core.utils.DateUtils;
|
||||
import com.pusong.system.domain.SysUser;
|
||||
import com.pusong.system.domain.SysUserPost;
|
||||
@ -26,13 +27,10 @@ import org.springframework.stereotype.Component;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.TemporalAdjusters;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
@ -49,11 +47,12 @@ public class CalSalaryBatch {
|
||||
private SysUserPostMapper sysUserPostMapper;
|
||||
@Resource
|
||||
private PsSalaryConfigMapper psSalaryConfigMapper;
|
||||
private PsSalaryMapper psSalaryMapper;
|
||||
/**
|
||||
* 每月1日凌晨1点执行
|
||||
*/
|
||||
@Scheduled(cron = "0 0 1 1 * ?")
|
||||
public void excute(){
|
||||
public void execute(){
|
||||
log.info("员工提成批处理开始");
|
||||
LocalDate now = LocalDate.now();
|
||||
LocalDate lastDayOfLastMonth = now.with(TemporalAdjusters.firstDayOfMonth());//这个月第一天0分0秒
|
||||
@ -95,7 +94,13 @@ public class CalSalaryBatch {
|
||||
BigDecimal salary = calSalary(busin, configMap.get(post.getPostId()));
|
||||
log.info("进行计算提成计算{}",salary);
|
||||
log.info("进行存表");
|
||||
|
||||
PsSalary psSalary = new PsSalary();
|
||||
psSalary.setSalaryMoney(salary);
|
||||
psSalary.setSalaryMonth(DateUtils.toString(firstDayOfLastMonth,"yyyy-MM"));
|
||||
psSalary.setSalaryDate(DateUtils.toDate(firstDayOfLastMonth));
|
||||
psSalary.setPostId(post.getPostId());
|
||||
psSalary.setUserId(userId);
|
||||
// psSalaryMapper.insert(psSalary);
|
||||
}
|
||||
|
||||
log.info("员工提成批处理结束");
|
||||
|
@ -37,7 +37,7 @@ public class PsSalaryController extends BaseController {
|
||||
private final IPsSalaryService psSalaryService;
|
||||
|
||||
/**
|
||||
* 查询员工提成提成列表
|
||||
* 提成列表查询
|
||||
*/
|
||||
@SaCheckPermission("business:salary:list")
|
||||
@GetMapping("/list")
|
||||
@ -45,61 +45,61 @@ public class PsSalaryController extends BaseController {
|
||||
return psSalaryService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出员工提成提成列表
|
||||
*/
|
||||
@SaCheckPermission("business:salary:export")
|
||||
@Log(title = "员工提成提成", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(PsSalaryBo bo, HttpServletResponse response) {
|
||||
List<PsSalaryVo> list = psSalaryService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "员工提成提成", PsSalaryVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取员工提成提成详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("business:salary:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<PsSalaryVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(psSalaryService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增员工提成提成
|
||||
*/
|
||||
@SaCheckPermission("business:salary:add")
|
||||
@Log(title = "员工提成提成", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody PsSalaryBo bo) {
|
||||
return toAjax(psSalaryService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改员工提成提成
|
||||
*/
|
||||
@SaCheckPermission("business:salary:edit")
|
||||
@Log(title = "员工提成提成", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PsSalaryBo bo) {
|
||||
return toAjax(psSalaryService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除员工提成提成
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("business:salary:remove")
|
||||
@Log(title = "员工提成提成", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(psSalaryService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
// /**
|
||||
// * 导出员工提成提成列表
|
||||
// */
|
||||
// @SaCheckPermission("business:salary:export")
|
||||
// @Log(title = "员工提成提成", businessType = BusinessType.EXPORT)
|
||||
// @PostMapping("/export")
|
||||
// public void export(PsSalaryBo bo, HttpServletResponse response) {
|
||||
// List<PsSalaryVo> list = psSalaryService.queryList(bo);
|
||||
// ExcelUtil.exportExcel(list, "员工提成提成", PsSalaryVo.class, response);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 获取员工提成提成详细信息
|
||||
// *
|
||||
// * @param id 主键
|
||||
// */
|
||||
// @SaCheckPermission("business:salary:query")
|
||||
// @GetMapping("/{id}")
|
||||
// public R<PsSalaryVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
// @PathVariable Long id) {
|
||||
// return R.ok(psSalaryService.queryById(id));
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 新增员工提成提成
|
||||
// */
|
||||
// @SaCheckPermission("business:salary:add")
|
||||
// @Log(title = "员工提成提成", businessType = BusinessType.INSERT)
|
||||
// @RepeatSubmit()
|
||||
// @PostMapping()
|
||||
// public R<Void> add(@Validated(AddGroup.class) @RequestBody PsSalaryBo bo) {
|
||||
// return toAjax(psSalaryService.insertByBo(bo));
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 修改员工提成提成
|
||||
// */
|
||||
// @SaCheckPermission("business:salary:edit")
|
||||
// @Log(title = "员工提成提成", businessType = BusinessType.UPDATE)
|
||||
// @RepeatSubmit()
|
||||
// @PutMapping()
|
||||
// public R<Void> edit(@Validated(EditGroup.class) @RequestBody PsSalaryBo bo) {
|
||||
// return toAjax(psSalaryService.updateByBo(bo));
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 删除员工提成提成
|
||||
// *
|
||||
// * @param ids 主键串
|
||||
// */
|
||||
// @SaCheckPermission("business:salary:remove")
|
||||
// @Log(title = "员工提成提成", businessType = BusinessType.DELETE)
|
||||
// @DeleteMapping("/{ids}")
|
||||
// public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
// @PathVariable Long[] ids) {
|
||||
// return toAjax(psSalaryService.deleteWithValidByIds(List.of(ids), true));
|
||||
// }
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 员工提成提成对象 ps_salary
|
||||
@ -36,13 +37,47 @@ public class PsSalary extends TenantEntity {
|
||||
/**
|
||||
* 员工提成金额
|
||||
*/
|
||||
private BigDecimal serviceProject;
|
||||
private BigDecimal salaryMoney;
|
||||
|
||||
/**
|
||||
* 提成月份
|
||||
*/
|
||||
private String salaryRatio;
|
||||
private String salaryMonth;
|
||||
|
||||
/**
|
||||
* 提成日期
|
||||
*/
|
||||
private Date salaryDate;
|
||||
|
||||
/**
|
||||
* 岗位di
|
||||
*/
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 合同数量
|
||||
*/
|
||||
private Integer contractNum;
|
||||
/**
|
||||
* 已完成数量
|
||||
*/
|
||||
private Integer finistContractNum;
|
||||
/**
|
||||
* 未完成数量
|
||||
*/
|
||||
private Integer unfinistContractNum;
|
||||
/**
|
||||
* 合同总金额
|
||||
*/
|
||||
private BigDecimal contractMoney;
|
||||
/**
|
||||
* 已完成金额
|
||||
*/
|
||||
private BigDecimal finistContractMoney;
|
||||
/**
|
||||
* 未完成金额
|
||||
*/
|
||||
private BigDecimal unfinistContractMoney;
|
||||
/**
|
||||
* 2逻辑删除 0 默认有效
|
||||
*/
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.pusong.business.domain.bo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.pusong.business.domain.PsSalary;
|
||||
import com.pusong.common.core.validate.AddGroup;
|
||||
import com.pusong.common.core.validate.EditGroup;
|
||||
@ -9,6 +10,7 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 员工提成提成业务对象 ps_salary
|
||||
@ -22,28 +24,24 @@ import java.math.BigDecimal;
|
||||
public class PsSalaryBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
* 姓名
|
||||
*/
|
||||
@NotNull(message = "主键id不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
private String name;
|
||||
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
* 开始时间
|
||||
*/
|
||||
@NotNull(message = "员工id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long userId;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date startDate;
|
||||
|
||||
|
||||
/**
|
||||
* 员工提成金额
|
||||
* 结束时间
|
||||
*/
|
||||
@NotNull(message = "员工提成金额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal serviceProject;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date endDate;
|
||||
|
||||
/**
|
||||
* 提成月份
|
||||
*/
|
||||
@NotBlank(message = "提成月份不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String salaryRatio;
|
||||
|
||||
|
||||
}
|
||||
|
@ -32,26 +32,22 @@ public class PsSalaryVo implements Serializable {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ExcelProperty(value = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 员工id
|
||||
*/
|
||||
@ExcelProperty(value = "员工id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 员工提成金额
|
||||
*/
|
||||
@ExcelProperty(value = "员工提成金额")
|
||||
private BigDecimal serviceProject;
|
||||
private BigDecimal salaryMoney;
|
||||
|
||||
/**
|
||||
* 提成月份
|
||||
* 提成日期
|
||||
*/
|
||||
@ExcelProperty(value = "提成月份")
|
||||
private String salaryRatio;
|
||||
private String salaryDate;
|
||||
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,17 @@
|
||||
package com.pusong.business.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.pusong.business.domain.PsContractInfo;
|
||||
import com.pusong.business.domain.PsSalary;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.domain.vo.PsSalaryVo;
|
||||
import com.pusong.business.domain.vo.PsTaskMainVo;
|
||||
import com.pusong.common.mybatis.annotation.DataColumn;
|
||||
import com.pusong.common.mybatis.annotation.DataPermission;
|
||||
import com.pusong.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 员工提成提成Mapper接口
|
||||
@ -12,4 +21,10 @@ import com.pusong.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
*/
|
||||
public interface PsSalaryMapper extends BaseMapperPlus<PsSalary, PsSalaryVo> {
|
||||
|
||||
@DataPermission({
|
||||
@DataColumn(key = "deptName", value = "use.create_dept"),
|
||||
@DataColumn(key = "userName", value = "use.create_by")
|
||||
})
|
||||
Page<PsSalaryVo> selectSalaryList(@Param("page") Page<PsSalary> page, @Param(Constants.WRAPPER) Wrapper<PsSalary> queryWrapper);
|
||||
|
||||
}
|
||||
|
@ -24,11 +24,11 @@ public interface PsTaskMainMapper extends BaseMapper<PsTaskMain> {
|
||||
@DataColumn(key = "deptName", value = "main.create_dept"),
|
||||
@DataColumn(key = "userName", value = "main.create_by")
|
||||
})
|
||||
Page<PsTaskMainVo> queryTaskPageList(@Param("page") Page<PsContractInfo> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||
Page<PsTaskMainVo> queryTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||
|
||||
@DataPermission({
|
||||
@DataColumn(key = "deptName", value = "appo.create_dept"),
|
||||
@DataColumn(key = "userName", value = "appo.executor")
|
||||
})
|
||||
Page<PsTaskMainVo> queryChildTaskPageList(@Param("page") Page<PsContractInfo> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||
Page<PsTaskMainVo> queryChildTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||
}
|
||||
|
@ -16,13 +16,7 @@ import java.util.List;
|
||||
*/
|
||||
public interface IPsSalaryService {
|
||||
|
||||
/**
|
||||
* 查询员工提成提成
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 员工提成提成
|
||||
*/
|
||||
PsSalaryVo queryById(Long id);
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询员工提成提成列表
|
||||
@ -33,36 +27,43 @@ public interface IPsSalaryService {
|
||||
*/
|
||||
TableDataInfo<PsSalaryVo> queryPageList(PsSalaryBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的员工提成提成列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 员工提成提成列表
|
||||
*/
|
||||
List<PsSalaryVo> queryList(PsSalaryBo bo);
|
||||
|
||||
/**
|
||||
* 新增员工提成提成
|
||||
*
|
||||
* @param bo 员工提成提成
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(PsSalaryBo bo);
|
||||
|
||||
/**
|
||||
* 修改员工提成提成
|
||||
*
|
||||
* @param bo 员工提成提成
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(PsSalaryBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除员工提成提成信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
// /**
|
||||
// * 查询员工提成提成
|
||||
// *
|
||||
// * @param id 主键
|
||||
// * @return 员工提成提成
|
||||
// */
|
||||
// PsSalaryVo queryById(Long id);
|
||||
// /**
|
||||
// * 查询符合条件的员工提成提成列表
|
||||
// *
|
||||
// * @param bo 查询条件
|
||||
// * @return 员工提成提成列表
|
||||
// */
|
||||
// List<PsSalaryVo> queryList(PsSalaryBo bo);
|
||||
//
|
||||
// /**
|
||||
// * 新增员工提成提成
|
||||
// *
|
||||
// * @param bo 员工提成提成
|
||||
// * @return 是否新增成功
|
||||
// */
|
||||
// Boolean insertByBo(PsSalaryBo bo);
|
||||
//
|
||||
// /**
|
||||
// * 修改员工提成提成
|
||||
// *
|
||||
// * @param bo 员工提成提成
|
||||
// * @return 是否修改成功
|
||||
// */
|
||||
// Boolean updateByBo(PsSalaryBo bo);
|
||||
//
|
||||
// /**
|
||||
// * 校验并批量删除员工提成提成信息
|
||||
// *
|
||||
// * @param ids 待删除的主键集合
|
||||
// * @param isValid 是否进行有效性校验
|
||||
// * @return 是否删除成功
|
||||
// */
|
||||
// Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
|
@ -31,17 +31,6 @@ public class PsSalaryServiceImpl implements IPsSalaryService {
|
||||
|
||||
private final PsSalaryMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询员工提成提成
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 员工提成提成
|
||||
*/
|
||||
@Override
|
||||
public PsSalaryVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询员工提成提成列表
|
||||
*
|
||||
@ -52,80 +41,101 @@ public class PsSalaryServiceImpl implements IPsSalaryService {
|
||||
@Override
|
||||
public TableDataInfo<PsSalaryVo> queryPageList(PsSalaryBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<PsSalary> lqw = buildQueryWrapper(bo);
|
||||
Page<PsSalaryVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
Page<PsSalaryVo> result = baseMapper.selectSalaryList(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的员工提成提成列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 员工提成提成列表
|
||||
*/
|
||||
@Override
|
||||
public List<PsSalaryVo> queryList(PsSalaryBo bo) {
|
||||
LambdaQueryWrapper<PsSalary> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<PsSalary> buildQueryWrapper(PsSalaryBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<PsSalary> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getUserId() != null, PsSalary::getUserId, bo.getUserId());
|
||||
lqw.eq(bo.getServiceProject() != null, PsSalary::getServiceProject, bo.getServiceProject());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSalaryRatio()), PsSalary::getSalaryRatio, bo.getSalaryRatio());
|
||||
// lqw.eq(bo.getUserId() != null, PsSalary::getUserId, bo.getUserId());
|
||||
// lqw.eq(bo.getServiceProject() != null, PsSalary::getServiceProject, bo.getServiceProject());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getSalaryRatio()), PsSalary::getSalaryRatio, bo.getSalaryRatio());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增员工提成提成
|
||||
*
|
||||
* @param bo 员工提成提成
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(PsSalaryBo bo) {
|
||||
PsSalary add = MapstructUtils.convert(bo, PsSalary.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改员工提成提成
|
||||
*
|
||||
* @param bo 员工提成提成
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(PsSalaryBo bo) {
|
||||
PsSalary update = MapstructUtils.convert(bo, PsSalary.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(PsSalary entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除员工提成提成信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
// /**
|
||||
// * 查询员工提成提成
|
||||
// *
|
||||
// * @param id 主键
|
||||
// * @return 员工提成提成
|
||||
// */
|
||||
// @Override
|
||||
// public PsSalaryVo queryById(Long id){
|
||||
// return baseMapper.selectVoById(id);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 查询符合条件的员工提成提成列表
|
||||
// *
|
||||
// * @param bo 查询条件
|
||||
// * @return 员工提成提成列表
|
||||
// */
|
||||
// @Override
|
||||
// public List<PsSalaryVo> queryList(PsSalaryBo bo) {
|
||||
// LambdaQueryWrapper<PsSalary> lqw = buildQueryWrapper(bo);
|
||||
// return baseMapper.selectVoList(lqw);
|
||||
// }
|
||||
//
|
||||
// private LambdaQueryWrapper<PsSalary> buildQueryWrapper(PsSalaryBo bo) {
|
||||
// Map<String, Object> params = bo.getParams();
|
||||
// LambdaQueryWrapper<PsSalary> lqw = Wrappers.lambdaQuery();
|
||||
// lqw.eq(bo.getUserId() != null, PsSalary::getUserId, bo.getUserId());
|
||||
// lqw.eq(bo.getServiceProject() != null, PsSalary::getServiceProject, bo.getServiceProject());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getSalaryRatio()), PsSalary::getSalaryRatio, bo.getSalaryRatio());
|
||||
// return lqw;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 新增员工提成提成
|
||||
// *
|
||||
// * @param bo 员工提成提成
|
||||
// * @return 是否新增成功
|
||||
// */
|
||||
// @Override
|
||||
// public Boolean insertByBo(PsSalaryBo bo) {
|
||||
// PsSalary add = MapstructUtils.convert(bo, PsSalary.class);
|
||||
// validEntityBeforeSave(add);
|
||||
// boolean flag = baseMapper.insert(add) > 0;
|
||||
// if (flag) {
|
||||
// bo.setId(add.getId());
|
||||
// }
|
||||
// return flag;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 修改员工提成提成
|
||||
// *
|
||||
// * @param bo 员工提成提成
|
||||
// * @return 是否修改成功
|
||||
// */
|
||||
// @Override
|
||||
// public Boolean updateByBo(PsSalaryBo bo) {
|
||||
// PsSalary update = MapstructUtils.convert(bo, PsSalary.class);
|
||||
// validEntityBeforeSave(update);
|
||||
// return baseMapper.updateById(update) > 0;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 保存前的数据校验
|
||||
// */
|
||||
// private void validEntityBeforeSave(PsSalary entity){
|
||||
// //TODO 做一些数据校验,如唯一约束
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 校验并批量删除员工提成提成信息
|
||||
// *
|
||||
// * @param ids 待删除的主键集合
|
||||
// * @param isValid 是否进行有效性校验
|
||||
// * @return 是否删除成功
|
||||
// */
|
||||
// @Override
|
||||
// public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
// if(isValid){
|
||||
// //TODO 做一些业务上的校验,判断是否需要校验
|
||||
// }
|
||||
// return baseMapper.deleteBatchIds(ids) > 0;
|
||||
// }
|
||||
}
|
||||
|
@ -4,4 +4,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.pusong.business.mapper.PsSalaryMapper">
|
||||
|
||||
|
||||
<select id="selectSalaryList" resultMap="com.pusong.business.domain.vo.PsSalaryVo">
|
||||
select
|
||||
ps.user_id,
|
||||
ps.salary_money ,
|
||||
su.nick_name,
|
||||
sp.post_name,
|
||||
(select count(*) from ps_contract_info info where info.custom_manager = ps.user_id and info.contract_status != '10' and info.is_cancel != '03') all_contract,
|
||||
(select count(*) from ps_contract_info inf where inf.custom_manager = ps.user_id and inf.contract_status == '50' and inf.is_cancel != '03') finish_contract,
|
||||
(select count(*) from ps_contract_info pci where pci.custom_manager = ps.user_id and pci.contract_status not in ('10','50') and pci.is_cancel != '03') unfinish_contract
|
||||
from ps_salary ps
|
||||
left join sys_user su on su.user_id = ps.user_id
|
||||
left join sys_post sp on ps.post_id = sp.post_id
|
||||
${ew.getCustomSqlSegment}
|
||||
</select>
|
||||
</mapper>
|
||||
|
@ -21,6 +21,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
main.start_date,
|
||||
main.task_status,
|
||||
main.contract_code,
|
||||
main.invoice,
|
||||
con.is_proxy con_is_proxy,
|
||||
con.custom_scene con_custom_scene,
|
||||
con.custom_manager con_custom_manager,
|
||||
|
Loading…
Reference in New Issue
Block a user