Commit 3c5620cf by zhangxingmin

push

parent 4436aff5
...@@ -7,6 +7,7 @@ import com.yd.csf.feign.client.salarysplit.ApiSalarySplitFeignClient; ...@@ -7,6 +7,7 @@ import com.yd.csf.feign.client.salarysplit.ApiSalarySplitFeignClient;
import com.yd.csf.feign.request.salarysplit.*; import com.yd.csf.feign.request.salarysplit.*;
import com.yd.csf.api.dto.ApiSalarySplitPageListDTO; import com.yd.csf.api.dto.ApiSalarySplitPageListDTO;
import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse; import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitExportSummaryListResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse; import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
...@@ -76,4 +77,14 @@ public class ApiSalarySplitController implements ApiSalarySplitFeignClient { ...@@ -76,4 +77,14 @@ public class ApiSalarySplitController implements ApiSalarySplitFeignClient {
public Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request) { public Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request) {
return apiSalarySplitService.queryRate(request); return apiSalarySplitService.queryRate(request);
} }
/**
* 导出-薪资拆分应发信息汇总列表
* @param request
* @return
*/
@Override
public Result<ApiSalarySplitExportSummaryListResponse> export(ApiSalarySplitExportSummaryListRequest request) {
return apiSalarySplitService.export(request);
}
} }
...@@ -5,10 +5,17 @@ import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryDto; ...@@ -5,10 +5,17 @@ import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class ApiSalarySplitSummaryPageDTO { public class ApiSalarySplitSummaryPageDTO {
/** /**
* 薪资拆分应发表唯一业务ID列表
*/
private List<String> salarySplitBizIdList;
/**
* 统计信息 * 统计信息
*/ */
private ApiSalarySplitSummaryDto statisticsDto; private ApiSalarySplitSummaryDto statisticsDto;
......
...@@ -5,6 +5,7 @@ import com.yd.csf.api.dto.ApiSalarySplitSummaryPageDTO; ...@@ -5,6 +5,7 @@ import com.yd.csf.api.dto.ApiSalarySplitSummaryPageDTO;
import com.yd.csf.feign.request.salarysplit.*; import com.yd.csf.feign.request.salarysplit.*;
import com.yd.csf.api.dto.ApiSalarySplitPageListDTO; import com.yd.csf.api.dto.ApiSalarySplitPageListDTO;
import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse; import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitExportSummaryListResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse; import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse;
public interface ApiSalarySplitService { public interface ApiSalarySplitService {
...@@ -17,4 +18,6 @@ public interface ApiSalarySplitService { ...@@ -17,4 +18,6 @@ public interface ApiSalarySplitService {
Result<ApiQueryRemainingResponse> queryRemaining(ApiQueryRemainingRequest request); Result<ApiQueryRemainingResponse> queryRemaining(ApiQueryRemainingRequest request);
Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request); Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request);
Result<ApiSalarySplitExportSummaryListResponse> export(ApiSalarySplitExportSummaryListRequest request);
} }
...@@ -12,6 +12,7 @@ import com.yd.common.utils.CodeGenerator; ...@@ -12,6 +12,7 @@ import com.yd.common.utils.CodeGenerator;
import com.yd.common.utils.RandomStringGenerator; import com.yd.common.utils.RandomStringGenerator;
import com.yd.csf.api.dto.ApiSalarySplitSummaryPageDTO; import com.yd.csf.api.dto.ApiSalarySplitSummaryPageDTO;
import com.yd.csf.api.service.ApiSalarySplitService; import com.yd.csf.api.service.ApiSalarySplitService;
import com.yd.csf.feign.dto.excel.ApiSalarySplitSummaryExcelDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitBatchSaveDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitBatchSaveDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitStatisticsDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitStatisticsDto;
...@@ -19,11 +20,16 @@ import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto; ...@@ -19,11 +20,16 @@ import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto;
import com.yd.csf.feign.request.salarysplit.*; import com.yd.csf.feign.request.salarysplit.*;
import com.yd.csf.api.dto.ApiSalarySplitPageListDTO; import com.yd.csf.api.dto.ApiSalarySplitPageListDTO;
import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse; import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitExportSummaryListResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse; import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse;
import com.yd.csf.service.model.FortuneAccount; import com.yd.csf.service.model.FortuneAccount;
import com.yd.csf.service.model.SalarySplit; import com.yd.csf.service.model.SalarySplit;
import com.yd.csf.service.service.FortuneAccountService; import com.yd.csf.service.service.FortuneAccountService;
import com.yd.csf.service.service.ISalarySplitService; import com.yd.csf.service.service.ISalarySplitService;
import com.yd.oss.feign.client.ApiExcelFeignClient;
import com.yd.oss.feign.dto.ExportParam;
import com.yd.oss.feign.dto.ExportResult;
import com.yd.oss.feign.request.ApiExportRequest;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -31,8 +37,10 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -31,8 +37,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
@Slf4j @Slf4j
@Service @Service
...@@ -47,6 +55,9 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService { ...@@ -47,6 +55,9 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService {
@Autowired @Autowired
private ApiExchangeRateFeignClient apiExchangeRateFeignClient; private ApiExchangeRateFeignClient apiExchangeRateFeignClient;
@Autowired
private ApiExcelFeignClient apiExcelFeignClient;
/** /**
* 分页查询-薪资拆分应发信息汇总列表 * 分页查询-薪资拆分应发信息汇总列表
* @param request * @param request
...@@ -59,6 +70,9 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService { ...@@ -59,6 +70,9 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService {
Page<ApiSalarySplitSummaryPageDto> page = new Page<>(request.getPageNo(), request.getPageSize()); Page<ApiSalarySplitSummaryPageDto> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiSalarySplitSummaryPageDto> iPage = iSalarySplitService.summaryPage(page, request); IPage<ApiSalarySplitSummaryPageDto> iPage = iSalarySplitService.summaryPage(page, request);
response.setPage(iPage); response.setPage(iPage);
//查询薪资拆分业务ID列表
List<String> salarySplitBizIdList = iSalarySplitService.queryList(request);
response.setSalarySplitBizIdList(salarySplitBizIdList);
return Result.success(response); return Result.success(response);
} }
...@@ -201,4 +215,60 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService { ...@@ -201,4 +215,60 @@ public class ApiSalarySplitServiceImpl implements ApiSalarySplitService {
return Result.success(); return Result.success();
} }
/**
* 导出-薪资拆分应发信息汇总列表
* @param request
* @return
*/
@Override
public Result<ApiSalarySplitExportSummaryListResponse> export(ApiSalarySplitExportSummaryListRequest request) {
// 查询数据
List<ApiSalarySplitSummaryPageDto> dataList = iSalarySplitService.summaryList(request);
List<ApiSalarySplitSummaryExcelDto> excelDtoList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(dataList)) {
excelDtoList = dataList.stream().map(dto -> {
ApiSalarySplitSummaryExcelDto excelDto = new ApiSalarySplitSummaryExcelDto();
BeanUtils.copyProperties(dto,excelDto);
return excelDto;
}).collect(Collectors.toList());
}
// 构建导出参数
ExportParam exportParam = new ExportParam();
// 指定需要导出的字段(字段名必须与 DTO 中的属性名一致)
exportParam.setFieldNames(Arrays.asList(
"salarySplitBizId","salarySplitNo", "brokerName", "internalNumber", "team",
"fromAmount", "toCurrency", "exchangeRate", "toAmount",
"fortuneAccountDate", "fortuneAccountMonth", "billOrg",
"status", "amount", "hkdAmount", "currency"
));
exportParam.setFileName("薪资拆分应发信息汇总");
exportParam.setUploadToOss(true);
exportParam.setOssPath("exports/salary_split/");
// 构建请求对象
ApiExportRequest exportRequest = new ApiExportRequest();
exportRequest.setDataList(excelDtoList);
exportRequest.setEntityClass(ApiSalarySplitSummaryExcelDto.class);
exportRequest.setExportParam(exportParam);
// 远程调用导出接口
Result<ExportResult> result = apiExcelFeignClient.export(exportRequest);
if (result.getCode() != 200 || result.getData() == null) {
throw new BusinessException("导出失败:" + result.getMsg());
}
ExportResult exportResult = result.getData();
if (!exportResult.getSuccess()) {
throw new BusinessException("导出失败:" + exportResult.getErrorMsg());
}
// 封装响应
ApiSalarySplitExportSummaryListResponse response = new ApiSalarySplitExportSummaryListResponse();
response.setUrl(exportResult.getOssUrl());
// response.setFileSize(exportResult.getFileSize());
// response.setTotalCount(dataList.size());
return Result.success(response);
}
} }
...@@ -4,6 +4,7 @@ import com.yd.common.result.Result; ...@@ -4,6 +4,7 @@ import com.yd.common.result.Result;
import com.yd.csf.feign.fallback.salarysplit.ApiSalarySplitFeignFallbackFactory; import com.yd.csf.feign.fallback.salarysplit.ApiSalarySplitFeignFallbackFactory;
import com.yd.csf.feign.request.salarysplit.*; import com.yd.csf.feign.request.salarysplit.*;
import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse; import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitExportSummaryListResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse; import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
...@@ -58,11 +59,11 @@ public interface ApiSalarySplitFeignClient { ...@@ -58,11 +59,11 @@ public interface ApiSalarySplitFeignClient {
@PostMapping("/query/rate") @PostMapping("/query/rate")
Result<ApiSalarySplitQueryRateResponse> queryRate(@Validated @RequestBody ApiSalarySplitQueryRateRequest request); Result<ApiSalarySplitQueryRateResponse> queryRate(@Validated @RequestBody ApiSalarySplitQueryRateRequest request);
// /** /**
// * 导出-薪资拆分应发信息汇总列表 * 导出-薪资拆分应发信息汇总列表
// * @param request * @param request
// * @return * @return
// */ */
// @PostMapping("/export/summary/list") @PostMapping("/export/summary/list")
// Result export(@Validated @RequestBody ApiSalarySplitBatchSaveRequest request); Result<ApiSalarySplitExportSummaryListResponse> export(@Validated @RequestBody ApiSalarySplitExportSummaryListRequest request);
} }
package com.yd.csf.feign.dto.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class ApiSalarySplitSummaryExcelDto {
@Excel(name = "薪资拆分应发表唯一业务ID", orderNum = "1")
private String salarySplitBizId;
@Excel(name = "发放编号", orderNum = "1")
private String salarySplitNo;
@Excel(name = "转介人名称", orderNum = "2")
private String brokerName;
@Excel(name = "转介人内部编号", orderNum = "3")
private String internalNumber;
@Excel(name = "所属团队", orderNum = "4")
private String team;
@Excel(name = "原币种金额", orderNum = "5")
private BigDecimal fromAmount;
@Excel(name = "目标币种", orderNum = "6")
private String toCurrency;
@Excel(name = "即时汇率", orderNum = "7")
private BigDecimal exchangeRate;
@Excel(name = "目标金额", orderNum = "8")
private BigDecimal toAmount;
@Excel(name = "出账日期", format = "yyyy-MM-dd", orderNum = "9")
private Date fortuneAccountDate;
@Excel(name = "出账月", orderNum = "10")
private String fortuneAccountMonth;
@Excel(name = "出账机构", orderNum = "11")
private String billOrg;
@Excel(name = "出账状态", orderNum = "12")
private String status;
@Excel(name = "出账总额", orderNum = "13")
private BigDecimal amount;
@Excel(name = "港币出账金额", orderNum = "14")
private BigDecimal hkdAmount;
@Excel(name = "出账币种", orderNum = "15")
private String currency;
}
...@@ -9,6 +9,11 @@ import java.util.Date; ...@@ -9,6 +9,11 @@ import java.util.Date;
public class ApiSalarySplitSummaryPageDto { public class ApiSalarySplitSummaryPageDto {
/** /**
* 薪资拆分应发表唯一业务ID
*/
private String salarySplitBizId;
/**
* 发放编号 * 发放编号
*/ */
private String salarySplitNo; private String salarySplitNo;
...@@ -92,4 +97,5 @@ public class ApiSalarySplitSummaryPageDto { ...@@ -92,4 +97,5 @@ public class ApiSalarySplitSummaryPageDto {
* 出账币种(原币种) * 出账币种(原币种)
*/ */
private String currency; private String currency;
}
}
\ No newline at end of file
...@@ -43,6 +43,11 @@ public class ApiSalarySplitFeignFallbackFactory implements FallbackFactory<ApiSa ...@@ -43,6 +43,11 @@ public class ApiSalarySplitFeignFallbackFactory implements FallbackFactory<ApiSa
public Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request) { public Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request) {
return null; return null;
} }
@Override
public Result export(ApiSalarySplitExportSummaryListRequest request) {
return null;
}
}; };
} }
} }
package com.yd.csf.feign.request.salarysplit;
import lombok.Data;
import java.util.List;
@Data
public class ApiSalarySplitExportSummaryListRequest {
/**
* 薪资拆分应发表唯一业务ID列表
*/
private List<String> salarySplitBizIdList;
}
package com.yd.csf.feign.response.salarysplit;
import lombok.Data;
@Data
public class ApiSalarySplitExportSummaryListResponse {
private String url;
}
...@@ -4,12 +4,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,12 +4,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitExportSummaryListRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest;
import com.yd.csf.service.model.SalarySplit; import com.yd.csf.service.model.SalarySplit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
* 薪资拆分应发表 Mapper 接口 * 薪资拆分应发表 Mapper 接口
...@@ -23,6 +26,10 @@ public interface SalarySplitMapper extends BaseMapper<SalarySplit> { ...@@ -23,6 +26,10 @@ public interface SalarySplitMapper extends BaseMapper<SalarySplit> {
IPage<ApiSalarySplitSummaryPageDto> summaryPage(@Param("page") Page<ApiSalarySplitSummaryPageDto> page, IPage<ApiSalarySplitSummaryPageDto> summaryPage(@Param("page") Page<ApiSalarySplitSummaryPageDto> page,
@Param("request") ApiSalarySplitSummaryPageRequest request); @Param("request") ApiSalarySplitSummaryPageRequest request);
List<ApiSalarySplitSummaryPageDto> summaryList(@Param("request") ApiSalarySplitExportSummaryListRequest request);
IPage<ApiSalarySplitPageDto> page(@Param("page") Page<ApiSalarySplitPageDto> page, IPage<ApiSalarySplitPageDto> page(@Param("page") Page<ApiSalarySplitPageDto> page,
@Param("request") ApiSalarySplitPageRequest request); @Param("request") ApiSalarySplitPageRequest request);
List<String> queryList(@Param("request") ApiSalarySplitSummaryPageRequest request);
} }
...@@ -4,10 +4,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,10 +4,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitExportSummaryListRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest;
import com.yd.csf.service.model.SalarySplit; import com.yd.csf.service.model.SalarySplit;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
...@@ -22,7 +26,11 @@ public interface ISalarySplitService extends IService<SalarySplit> { ...@@ -22,7 +26,11 @@ public interface ISalarySplitService extends IService<SalarySplit> {
IPage<ApiSalarySplitSummaryPageDto> summaryPage(Page<ApiSalarySplitSummaryPageDto> page, IPage<ApiSalarySplitSummaryPageDto> summaryPage(Page<ApiSalarySplitSummaryPageDto> page,
ApiSalarySplitSummaryPageRequest request); ApiSalarySplitSummaryPageRequest request);
List<ApiSalarySplitSummaryPageDto> summaryList(ApiSalarySplitExportSummaryListRequest request);
IPage<ApiSalarySplitPageDto> page(Page<ApiSalarySplitPageDto> page, ApiSalarySplitPageRequest request); IPage<ApiSalarySplitPageDto> page(Page<ApiSalarySplitPageDto> page, ApiSalarySplitPageRequest request);
List<String> queryList(ApiSalarySplitSummaryPageRequest request);
Boolean deleteByFortuneAccountBizId(String fortuneAccountBizId); Boolean deleteByFortuneAccountBizId(String fortuneAccountBizId);
} }
...@@ -5,14 +5,18 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,14 +5,18 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitPageDto;
import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto; import com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitExportSummaryListRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitPageRequest;
import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest; import com.yd.csf.feign.request.salarysplit.ApiSalarySplitSummaryPageRequest;
import com.yd.csf.service.model.SalarySplit; import com.yd.csf.service.model.SalarySplit;
import com.yd.csf.service.dao.SalarySplitMapper; import com.yd.csf.service.dao.SalarySplitMapper;
import com.yd.csf.service.service.ISalarySplitService; import com.yd.csf.service.service.ISalarySplitService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* <p> * <p>
* 薪资拆分应发表 服务实现类 * 薪资拆分应发表 服务实现类
...@@ -31,11 +35,21 @@ public class SalarySplitServiceImpl extends ServiceImpl<SalarySplitMapper, Salar ...@@ -31,11 +35,21 @@ public class SalarySplitServiceImpl extends ServiceImpl<SalarySplitMapper, Salar
} }
@Override @Override
public List<ApiSalarySplitSummaryPageDto> summaryList(ApiSalarySplitExportSummaryListRequest request) {
return this.baseMapper.summaryList(request);
}
@Override
public IPage<ApiSalarySplitPageDto> page(Page<ApiSalarySplitPageDto> page, public IPage<ApiSalarySplitPageDto> page(Page<ApiSalarySplitPageDto> page,
ApiSalarySplitPageRequest request) { ApiSalarySplitPageRequest request) {
return this.baseMapper.page(page,request); return this.baseMapper.page(page,request);
} }
@Override
public List<String> queryList(ApiSalarySplitSummaryPageRequest request){
return this.baseMapper.queryList(request);
}
/** /**
* 根据出账记录删除对应薪资拆分记录信息 * 根据出账记录删除对应薪资拆分记录信息
* @param fortuneAccountBizId * @param fortuneAccountBizId
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
<select id="summaryPage" resultType="com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto"> <select id="summaryPage" resultType="com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto">
select select
ss.salary_split_biz_id,
ss.salary_split_no, ss.salary_split_no,
ss.fortune_account_biz_id, ss.fortune_account_biz_id,
ss.broker_name, ss.broker_name,
...@@ -55,4 +56,68 @@ ...@@ -55,4 +56,68 @@
and ss.is_deleted = 0 and ss.is_deleted = 0
</where> </where>
</select> </select>
<select id="queryList" resultType="java.lang.String">
select ss.salary_split_biz_id
from salary_split ss
inner join fortune_account fa
on ss.fortune_account_biz_id = fa.fortune_account_biz_id
and fa.is_deleted = 0
<where>
<if test="request.brokerBizIdList != null and request.brokerBizIdList.size > 0">
and ss.broker_biz_id in
<foreach collection="request.brokerBizIdList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<!-- 开始月份:大于等于该月第一天(包含整个月开始) -->
<if test="request.startMonth != null and request.startMonth != ''">
and fa.fortune_account_date >= DATE(CONCAT(#{request.startMonth}, '-01'))
</if>
<!-- 结束月份:小于下月第一天(包含整个月结束) -->
<if test="request.endMonth != null and request.endMonth != ''">
and fa.fortune_account_date &lt; DATE_ADD(DATE(CONCAT(#{request.endMonth}, '-01')), INTERVAL 1 MONTH)
</if>
<if test="request.billOrg != null and request.billOrg != ''">
and ss.bill_org like concat('%', #{request.billOrg}, '%')
</if>
and ss.is_deleted = 0
</where>
</select>
<select id="summaryList" resultType="com.yd.csf.feign.dto.salarysplit.ApiSalarySplitSummaryPageDto">
select
ss.salary_split_biz_id,
ss.salary_split_no,
ss.fortune_account_biz_id,
ss.broker_name,
ss.broker_biz_id,
ss.internal_number,
fa.team,
ss.from_amount,
ss.to_currency,
ss.exchange_rate,
ss.to_amount,
fa.fortune_account_date,
ss.bill_org,
fa.status,
fa.amount,
fa.hkd_amount,
fa.currency,
DATE_FORMAT(fa.fortune_account_date, '%Y%m') as fortune_account_month
from salary_split ss
inner join fortune_account fa
on ss.fortune_account_biz_id = fa.fortune_account_biz_id
and fa.is_deleted = 0
<where>
<if test="request.salarySplitBizIdList != null and request.salarySplitBizIdList.size > 0">
and ss.salary_split_biz_id in
<foreach collection="request.salarySplitBizIdList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
and ss.is_deleted = 0
</where>
</select>
</mapper> </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