Commit d429ac46 by huluobin

Merge branch 'master' into 3.0

# Conflicts:
#	cost-service/src/main/java/com/blt/other/module/cost/service/impl/AppCostServiceImpl.java
#	cost-service/src/main/java/com/blt/other/module/cost/service/impl/CostDetailServiceImpl.java
parents f297ed3c 4cbf42d9
package com.bailuntec.cost.api.dto;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2021/1/22 1:51 下午
*/
@Data
public class CostDetailDto {
@TableId(type = IdType.AUTO)
private Integer id;
@ApiModelProperty("费用详情编号")
private String detailNo;
@ApiModelProperty("费用单编号")
private String costNo;
@ApiModelProperty("类型编号")
private String typeNo;
@ApiModelProperty("类型标题")
private String typeName;
@ApiModelProperty("会计一级科目")
private String accountingSubjectNo;
@ApiModelProperty("会计一级科目")
private String accountingSubjectName;
@ApiModelProperty("创建人id")
private Integer createUserid;
@ApiModelProperty("创建人名称")
private String createUsername;
@ApiModelProperty("付款理由")
private String costReason;
@ApiModelProperty("费用详情金额")
private BigDecimal amount;
@ApiModelProperty("币种")
private String dic;
@ApiModelProperty("借支单-借支类型")
private String lendType;
@ApiModelProperty("文件地址")
private String filePath;
@ApiModelProperty("项目")
private String projectType;
@ApiModelProperty("客户编号")
private String customerNum;
}
...@@ -227,4 +227,7 @@ public class CostDto { ...@@ -227,4 +227,7 @@ public class CostDto {
private CostTemplateDto costTemplate; private CostTemplateDto costTemplate;
@TableField(exist = false)
private List<CostDetailDto> costDetailList;
} }
package com.blt.other.module.cost.model; package com.blt.other.module.cost.model;
import com.bailuntec.common.BeanUtils;
import com.bailuntec.cost.api.dto.CostDetailDto;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
...@@ -64,5 +66,10 @@ public class CostDetailDomain { ...@@ -64,5 +66,10 @@ public class CostDetailDomain {
private String customerNum; private String customerNum;
public CostDetailDto castToDto() {
CostDetailDto costDetailDto = new CostDetailDto();
BeanUtils.copyProperties(this, costDetailDto);
return costDetailDto;
}
} }
...@@ -2,6 +2,7 @@ package com.blt.other.module.cost.model; ...@@ -2,6 +2,7 @@ package com.blt.other.module.cost.model;
import com.bailuntec.api.bailuntec.cw.request.PostApplyReq; import com.bailuntec.api.bailuntec.cw.request.PostApplyReq;
import com.bailuntec.common.BeanUtils; import com.bailuntec.common.BeanUtils;
import com.bailuntec.common.ListUtil;
import com.bailuntec.common.SpringContextUtil; import com.bailuntec.common.SpringContextUtil;
import com.bailuntec.common.StringUtils; import com.bailuntec.common.StringUtils;
import com.bailuntec.cost.api.dto.CostAttach; import com.bailuntec.cost.api.dto.CostAttach;
...@@ -31,6 +32,7 @@ import java.text.DecimalFormat; ...@@ -31,6 +32,7 @@ import java.text.DecimalFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
@Accessors(chain = true) @Accessors(chain = true)
@TableName(value = "cost", autoResultMap = true) @TableName(value = "cost", autoResultMap = true)
...@@ -262,6 +264,10 @@ public class CostDomain implements Serializable { ...@@ -262,6 +264,10 @@ public class CostDomain implements Serializable {
private List<CostDetailDomain> costDetailDomainList; private List<CostDetailDomain> costDetailDomainList;
@TableField(exist = false)
private List<CostDetailDomain> costDetailDomainList;
private static final String REGEX_CHINESE = "[\u4e00-\u9fa5]";// 中文正则 private static final String REGEX_CHINESE = "[\u4e00-\u9fa5]";// 中文正则
public PostApplyReq buildPostApplyReq() { public PostApplyReq buildPostApplyReq() {
...@@ -444,6 +450,9 @@ public class CostDomain implements Serializable { ...@@ -444,6 +450,9 @@ public class CostDomain implements Serializable {
} }
costDto.setIsPic(picFilter.contains(extension)); costDto.setIsPic(picFilter.contains(extension));
} }
if (ListUtil.isNotEmpty(costDetailDomainList)) {
costDto.setCostDetailList(costDetailDomainList.stream().map(CostDetailDomain::castToDto).collect(Collectors.toList()));
}
return costDto; return costDto;
} }
......
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.blt.other.module.cost.dto.request.ResetReq; import com.blt.other.module.cost.dto.request.ResetReq;
import com.blt.other.module.cost.dto.response.ResetResp; import com.blt.other.module.cost.dto.response.ResetResp;
import com.blt.other.module.cost.model.CostDetailDomain; import com.blt.other.module.cost.model.CostDetailDomain;
import com.blt.other.module.cost.model.CostDomain;
import java.util.List; import java.util.List;
...@@ -16,4 +17,6 @@ public interface CostDetailService extends IService<CostDetailDomain> { ...@@ -16,4 +17,6 @@ public interface CostDetailService extends IService<CostDetailDomain> {
Integer update(CostDetailDomain domain); Integer update(CostDetailDomain domain);
ResetResp reset(ResetReq req); ResetResp reset(ResetReq req);
void setDetail(List<CostDomain> costDomainList);
} }
...@@ -13,6 +13,7 @@ import com.blt.other.module.cost.dto.request.AppCostRejectReq; ...@@ -13,6 +13,7 @@ import com.blt.other.module.cost.dto.request.AppCostRejectReq;
import com.blt.other.module.cost.model.CostDomain; import com.blt.other.module.cost.model.CostDomain;
import com.blt.other.module.cost.service.AppCostService; import com.blt.other.module.cost.service.AppCostService;
import com.blt.other.module.cost.service.CostService; import com.blt.other.module.cost.service.CostService;
import com.blt.other.module.cost.service.CostDetailService;
import com.blt.other.module.cost.service.impl.costcheck.*; import com.blt.other.module.cost.service.impl.costcheck.*;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -32,11 +33,15 @@ public class AppCostServiceImpl implements AppCostService { ...@@ -32,11 +33,15 @@ public class AppCostServiceImpl implements AppCostService {
@Resource @Resource
CostDao costDao; CostDao costDao;
@Resource @Resource
CostDetailService costDetailService;
@Resource
CostService costService; CostService costService;
@Override @Override
public Page<CostDto> appCheckCostList(AppCheckCostListReq req) { public Page<CostDto> appCheckCostList(AppCheckCostListReq req) {
IPage<CostDomain> costDomainIPage = new Page<>(req.getPageNum(), req.getPageSize()); IPage<CostDomain> costDomainIPage = new Page<>(req.getPageNum(), req.getPageSize());
costDetailService.setDetail(costDomainIPage.getRecords());
return (Page<CostDto>) costDao.appCheckCostList(costDomainIPage, req).convert(CostDomain::castToDto); return (Page<CostDto>) costDao.appCheckCostList(costDomainIPage, req).convert(CostDomain::castToDto);
} }
...@@ -55,6 +60,7 @@ public class AppCostServiceImpl implements AppCostService { ...@@ -55,6 +60,7 @@ public class AppCostServiceImpl implements AppCostService {
@Override @Override
public Page<CostDto> appCostList(AppCostListReq req) { public Page<CostDto> appCostList(AppCostListReq req) {
IPage<CostDomain> costDomainIPage = new Page<>(req.getPageNum(), req.getPageSize()); IPage<CostDomain> costDomainIPage = new Page<>(req.getPageNum(), req.getPageSize());
costDetailService.setDetail(costDomainIPage.getRecords());
return (Page<CostDto>) costDao.appCostList(costDomainIPage, req).convert(CostDomain::castToDto); return (Page<CostDto>) costDao.appCostList(costDomainIPage, req).convert(CostDomain::castToDto);
} }
......
...@@ -2,6 +2,7 @@ package com.blt.other.module.cost.service.impl; ...@@ -2,6 +2,7 @@ package com.blt.other.module.cost.service.impl;
import com.bailuntec.common.BeanUtils; import com.bailuntec.common.BeanUtils;
import com.bailuntec.common.StringUtils; import com.bailuntec.common.StringUtils;
import com.bailuntec.common.ListUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.blt.other.common.util.PathUtil; import com.blt.other.common.util.PathUtil;
...@@ -11,6 +12,7 @@ import com.blt.other.module.cost.dao.CostTypeDao; ...@@ -11,6 +12,7 @@ import com.blt.other.module.cost.dao.CostTypeDao;
import com.blt.other.module.cost.dto.request.ResetReq; import com.blt.other.module.cost.dto.request.ResetReq;
import com.blt.other.module.cost.dto.response.ResetResp; import com.blt.other.module.cost.dto.response.ResetResp;
import com.blt.other.module.cost.model.CostDetailDomain; import com.blt.other.module.cost.model.CostDetailDomain;
import com.blt.other.module.cost.model.CostDomain;
import com.blt.other.module.cost.service.CostDetailService; import com.blt.other.module.cost.service.CostDetailService;
import com.blt.other.module.cost.service.CostService; import com.blt.other.module.cost.service.CostService;
import com.blt.other.module.cost.utils.CostFileUtil; import com.blt.other.module.cost.utils.CostFileUtil;
...@@ -19,6 +21,8 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -19,6 +21,8 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service @Service
public class CostDetailServiceImpl extends ServiceImpl<CostDetailDao, CostDetailDomain> implements CostDetailService { public class CostDetailServiceImpl extends ServiceImpl<CostDetailDao, CostDetailDomain> implements CostDetailService {
...@@ -78,4 +82,20 @@ public class CostDetailServiceImpl extends ServiceImpl<CostDetailDao, CostDetail ...@@ -78,4 +82,20 @@ public class CostDetailServiceImpl extends ServiceImpl<CostDetailDao, CostDetail
resetResp.setSuccess(true); resetResp.setSuccess(true);
return resetResp; return resetResp;
} }
@Override
public void setDetail(List<CostDomain> costDomainList) {
if (ListUtil.isNotEmpty(costDomainList)) {
List<String> costNoList = costDomainList.stream().map(CostDomain::getCostNo).collect(Collectors.toList());
List<CostDetailDomain> costDetailDomainList = baseMapper.selectList(new LambdaQueryWrapper<CostDetailDomain>()
.in(CostDetailDomain::getCostNo, costNoList));
Map<String, List<CostDetailDomain>> costDetailDomainMap = costDetailDomainList.stream()
.collect(Collectors.groupingBy(CostDetailDomain::getCostNo));
costDomainList.forEach(costDomain -> costDomain.setCostDetailDomainList(costDetailDomainMap.get(costDomain.getCostNo())));
}
}
} }
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