|
|
@@ -243,6 +243,31 @@ public class PsiLossService {
|
|
|
return pageData;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 根据库存名称查询报损数据
|
|
|
+ * @param page
|
|
|
+ * @param dto
|
|
|
+ * @return
|
|
|
+ * @throws Exception
|
|
|
+ */
|
|
|
+ public IPage<PsiLossDetailed> getLossByTradeName(Page<PsiLossDetailed> page, PsiLossDetailed dto) throws Exception {
|
|
|
+ QueryWrapper<PsiLossDetailed> queryWrapper = QueryWrapperGenerator.buildQueryCondition(dto, PsiLossDetailed.class);
|
|
|
+ queryWrapper.eq("a.del_flag", "0");
|
|
|
+ queryWrapper.eq("b.status", "5");
|
|
|
+ if (StringUtils.isNotBlank(dto.getLossNo())) {
|
|
|
+ queryWrapper.like("b.collect_no", dto.getLossNo());
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(dto.getGoodsName())) {
|
|
|
+ queryWrapper.eq("a.goods_name", dto.getGoodsName());
|
|
|
+ }
|
|
|
+ if (dto.getLossDates() != null && dto.getLossDates().length == 2) {
|
|
|
+ queryWrapper.between("b.collect_date", dto.getLossDates()[0], dto.getLossDates()[1]);
|
|
|
+ }
|
|
|
+
|
|
|
+ IPage<PsiLossDetailed> pageData = basicMapper.getLossByTradeName(page, queryWrapper);
|
|
|
+ return pageData;
|
|
|
+ }
|
|
|
+
|
|
|
private void validateDetailInfos(List<PsiLossDetailed> detailInfos) {
|
|
|
if (CollectionUtils.isEmpty(detailInfos)) {
|
|
|
throw new RuntimeException("报损明细不能为空");
|